Библиотека собеса по C# | вопросы с собеседований
الذهاب إلى القناة على Telegram
Вопросы с собеседований по C# и ответы на них. По рекламе: @proglib_adv Учиться у нас: https://clc.to/QRJIVw Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197
إظهار المزيد5 640
المشتركون
لا توجد بيانات24 ساعات
لا توجد بيانات7 أيام
+930 أيام
جاري تحميل البيانات...
القنوات المماثلة
سحابة العلامات
الإشارات الواردة والصادرة
---
---
---
---
---
---
جذب المشتركين
أغسطس '26
أغسطس '26
+42
في 1 قنوات
يوليو '26
+63
في 1 قنوات
Get PRO
يونيو '26
+54
في 1 قنوات
Get PRO
مايو '26
+129
في 3 قنوات
Get PRO
أبريل '26
+89
في 3 قنوات
Get PRO
مارس '26
+162
في 1 قنوات
Get PRO
فبراير '26
+172
في 4 قنوات
Get PRO
يناير '26
+162
في 4 قنوات
Get PRO
ديسمبر '25
+67
في 1 قنوات
Get PRO
نوفمبر '25
+50
في 0 قنوات
Get PRO
أكتوبر '25
+81
في 1 قنوات
Get PRO
سبتمبر '25
+75
في 0 قنوات
Get PRO
أغسطس '25
+100
في 2 قنوات
Get PRO
يوليو '25
+82
في 3 قنوات
Get PRO
يونيو '25
+77
في 1 قنوات
Get PRO
مايو '25
+65
في 0 قنوات
Get PRO
أبريل '25
+130
في 1 قنوات
Get PRO
مارس '25
+217
في 52 قنوات
Get PRO
فبراير '25
+146
في 31 قنوات
Get PRO
يناير '25
+201
في 35 قنوات
Get PRO
ديسمبر '24
+264
في 35 قنوات
Get PRO
نوفمبر '24
+233
في 37 قنوات
Get PRO
أكتوبر '24
+218
في 35 قنوات
Get PRO
سبتمبر '24
+182
في 35 قنوات
Get PRO
أغسطس '24
+148
في 35 قنوات
Get PRO
يوليو '24
+183
في 35 قنوات
Get PRO
يونيو '24
+192
في 29 قنوات
Get PRO
مايو '24
+125
في 35 قنوات
Get PRO
أبريل '24
+33 606
في 58 قنوات
Get PRO
مارس '24
+354
في 31 قنوات
Get PRO
فبراير '24
+2 603
في 30 قنوات
| التاريخ | نمو المشتركين | الإشارات | القنوات | |
| 26 أغسطس | +1 | |||
| 25 أغسطس | +2 | |||
| 24 أغسطس | +2 | |||
| 23 أغسطس | 0 | |||
| 22 أغسطس | +2 | |||
| 21 أغسطس | +1 | |||
| 20 أغسطس | +3 | |||
| 19 أغسطس | +1 | |||
| 18 أغسطس | +2 | |||
| 17 أغسطس | +2 | |||
| 16 أغسطس | 0 | |||
| 15 أغسطس | +2 | |||
| 14 أغسطس | +3 | |||
| 13 أغسطس | +1 | |||
| 12 أغسطس | 0 | |||
| 11 أغسطس | +1 | |||
| 10 أغسطس | +1 | |||
| 09 أغسطس | +2 | |||
| 08 أغسطس | +4 | |||
| 07 أغسطس | +1 | |||
| 06 أغسطس | +3 | |||
| 05 أغسطس | +2 | |||
| 04 أغسطس | +1 | |||
| 03 أغسطس | 0 | |||
| 02 أغسطس | +3 | |||
| 01 أغسطس | +2 |
منشورات القناة
Долгоживущий .NET-сервис постепенно “распухает” по памяти без явных LOH-пиков. В дампе видно множество делегатов/лямбд, Timer и CancellationTokenRegistration, висящих в Gen2. Как диагностировать и устранить утечки из-за событий/таймеров/регистраций?
Проанализировать пути до корней (dotMemory/PerfView/dotnet-dump gcroot) — проверить коллекции подписчиков и списки делегатов у источников событий. Убедиться, что:
✍🏻 все подписки снимаются в Dispose/IAsyncDisposable;
✍🏻 CancellationToken.Register хранит IDisposable и корректно Dispose();
✍🏻 Timer/PeriodicTimer/System.Threading.Channels закрываются/завершаются;
✍🏻 не удерживаются замыканиями большие объекты/this.
При необходимости — слабые события/WeakReference, паттерн “own the lifetime”, и тест “утечек” в CI с сравнением heap-снимков.
Библиотека собеса по С#
| 2 | 👅 Самое сложное — выбрать не курс, а направление
Сегодня хочется разобраться в AI-агентах. Через пару недель появляется задача, где нужны алгоритмы. Потом понимаешь, что неплохо бы освежить Python или математику для Data Science.
🔜 Именно поэтому подписка на обучение многим оказывается удобнее отдельных курсов. Можно спокойно переключаться между темами, когда меняются задачи, а не покупать новую программу каждый раз.
В подписку Proglib Academy входят все основные направления — AI, ML, Python, алгоритмы, математика для DS и другие курсы, а ещё закрытый видеохаб с вебинарами практиков.
Начать можно с пробного месяца. Если решите остаться, его стоимость зачтётся при оформлении подписки 😎
🔗 Узнать подробнее
🏃♀️ Proglib Academy | 876 |
| 3 | Покупать новый курс каждый раз, когда меняется рабочая задача, — довольно странная механика. Нашли альтернативу 👇 | 907 |
| 4 | Разница между LINQ lazy loading и eager loading
В случае lazy loading зависимые таблицы (дочерние объекты) не загружаются автоматически с родительскими, а загрузятся в тот момент, когда они понадобятся. В LINQ по умолчанию используется lazy loading.
В случае eager loading зависимые объекты загружаются автоматически с родительской таблицей. Для того, чтобы использовать eager loading, нужно применить метод Include().
🐸Библиотека собеса по С# | 1 214 |
| 5 | Как устроить высокопроизводительную сериализацию JSON без лишних аллокаций?
Реюзайте один JsonSerializerOptions (кешируйте статически), используйте System.Text.Json с Utf8JsonWriter/IAsyncEnumerable<T> для стриминга, избегайте промежуточных строк, включайте source-generators (JsonSerializerContext) вместо рефлексии, буферизуйте через ArrayPool<byte> и пишите напрямую в PipeWriter/BodyWriter.
Библиотека собеса по С# | 1 308 |
| 6 | AI-инструменты уже умеют быстро писать код, но для C#-разработчика это не отменяет экспертизу, а делает её важнее. Теперь нужно не просто получить подсказку от ассистента, а понять, где она корректна, где скрывает ошибку и какие последствия принесёт в .NET-приложении.
5 августа в 20:00 МСК на открытом вебинаре OTUS разберём, как использовать AI так, чтобы становиться сильнее как C#-разработчик, а не зависеть от автогенерации. Покажем, где AI действительно ускоряет работу Middle/Senior: рефакторинг, генерация тестов, разбор legacy-кода, объяснение стектрейсов и поиск направлений для улучшения.
Отдельно посмотрим на зоны, где ассистенты часто ошибаются: потокобезопасность, работа с IDisposable, производительность LINQ, тонкости DI и конфигурации. Разберём, как ревьюить AI-код, формулировать запросы под задачи C#-разработчика и выстраивать workflow, где AI усиливает компетенции, а не заменяет понимание CLR, сборки мусора, многопоточности и архитектурных паттернов.
Урок проходит в преддверии старта курса «C#-разработчик. Продвинутый уровень».
👉 Регистрируйтесь: https://clc.to/pjxR6g
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 | 724 |
| 7 | 🎯 У разработчика, DevOps-инженера и техлида разные причины задуматься о системной работе с AI-агентами
Но цель одна: перейти от случайных удачных запусков к управляемому процессу на реальном проекте — с понятными правилами, ревью, контролем расходов и безопасности ✔️
На курсе «ИИ для разработчиков» участники выстраивают такой процесс на практике: подключают инструменты, задают границы для агента и учатся понимать, где ему можно доверять работу, а где требуется проверка.
⚡️ Предзапись на осенний поток уже открыта
🏃♀️ Proglib Academy | 842 |
| 8 | Разработчику нужен стабильный результат, DevOps — контроль инфраструктуры, техлиду — правила для всей команды. Собрали это в одном посте 👇 | 909 |
| 9 | Что такое асинхронные потоки в C#?
Асинхронные потоки в C# — это языковая функция, представленная в C# 8.0, которая позволяет вам потреблять асинхронные последовательности данных асинхронно. Они объединяют возможности async/await и IEnumerable/IAsyncEnumerable для обеспечения эффективной и удобной обработки асинхронных потоков данных.
Библиотека собеса по С# | 959 |
| 10 | Напишите особенности обобщений на C#?
Generics — это метод, который улучшает ваши программы во многих отношениях, например: Он помогает вам в повторном использовании кода, производительности и безопасности типов. Вы можете создавать собственные универсальные классы, методы, интерфейсы и делегаты. Вы можете создавать универсальные классы коллекций. Библиотека классов .NET Framework содержит много новых универсальных классов коллекций в пространстве имен System.Collections.Generic. Вы также можете получить информацию о типах, используемых в универсальных типах данных во время выполнения.
Библиотека собеса по С# | 1 069 |
| 11 | У вас в проекте есть файл вроде utils_v2_final_FIX.py, который все боятся трогать ❓
Что делаете с таким легаси?
❤️ Не трогаю: работает — и ладно
👍 Переписываю с нуля и надеюсь на лучшее
🔥 Сначала покрываю тестами, потом рефакторю по частям
👾 У нас такого нет — честно-честно
На курсе «ИИ для разработчиков» разберём третий подход: как с помощью агента зафиксировать текущее поведение легаси-кода тестами, а затем менять его небольшими безопасными шагами — без одного огромного PR на тысячу файлов.
До 31 июля действует скидка и бессрочный доступ к материалам.
🔗 Занять место со скидкой
🏃♀️ Proglib Academy | 1 034 |
| 12 | Когда название файла уже само по себе считается техническим долгом 👇 | 948 |
| 13 | Когда выбирать System.IO.Pipelines вместо Stream, и что важно для корректного парсинга?
Для высокопроизводительных протоколов/сокетов: PipeReader выдаёт ReadOnlySequence<byte> без копий, парсите инкрементально, учитывайте частичные сообщения, управляйте backpressure через AdvanceTo(consumed, examined), не требуйте непрерывной памяти, корректно завершайте Complete() и прокидывайте CancellationToken.
Библиотека собеса по С# | 1 056 |
| 14 | 📈 Скоро фраза «умею пользоваться AI» в резюме будет звучать так же странно, как сегодня «умею пользоваться Git»
Это просто станет частью профессии. А вот умение встроить AI в процесс разработки так, чтобы он действительно ускорял работу команды, останется конкурентным преимуществом 💡
🔜 На курсе «ИИ для разработчиков» участники работают со своими проектами и учатся делать AI частью ежедневной разработки: планировать задачи, писать код, проверять изменения, готовить PR и автоматизировать рутину.
До конца июля действует специальная цена — 59 990 ₽ вместо 79 990 ₽ 🥳 И получить бессрочный доступ ко всем материалам курса.
🔗 Посмотреть, как устроен курс
🏃♀️ Proglib Academy | 967 |
| 15 | 😏 До конца июля сохраняются две приятные вещи: специальная цена и бессрочный доступ к материалам курса. Подробнее — в посте 👇 | 969 |
| 16 | Как бы вы объяснили разницу между Repeater и ListView?
Элемент управления Repeater является производным от класса Control. Повторитель просто повторяет данные, указанные в шаблонах. Повторяющиеся данные обычно представляют собой HTML-код, смешанный с записями из источников данных. Вывод Repeater не предопределен. Из-за этого Repeater требует больше всего работы для определения шаблона. Взамен он дает нам наибольшую гибкость для построения макета и оптимизации представления.
С тем же шаблоном и тем же набором данных Repeater обычно работает быстрее, чем элементы управления Data List или GridView. Это в основном из-за класса DataReader, который используется для доступа только для чтения. DataReader быстрее, чем классы DataSet или DataTable, обычно используемые с GridView.
По сравнению с элементами управления GridView и DataList, Repeater имеет ограниченные возможности. По умолчанию Repeater хорош для отображения данных. Это не лучший выбор, если вам нужно редактировать данные. Кроме того, по умолчанию он не обеспечивает разбиение на страницы и сортировку записей.
Элемент управления ListView — это новейший элемент управления представлением данных, представленный в ASP.NET 3.5. Предыдущие элементы управления (Repeater, DataList и GridView) логически следуют друг за другом. Например, Repeater — самый простой, но быстрый, затем DataList имеет больше функций, но и больше накладных расходов, и, наконец, GridView — самый сложный, имеет больше функций, но самый тяжелый и, следовательно, самый медленный на странице. Теперь есть новый элемент управления ListView, который пытается предоставить лучшее с обеих сторон: скорость и гибкость в дизайне, а также множество функций, таких как разбиение на страницы, обновление или удаление записей и т. д. Из-за этого элемент управления ListView часто является лучшим выбором, чем Repeater или DataList.
Библиотека собеса по С# | 1 376 |
| 17 | Как бы вы настроили систему диалогов для NPC в Unity?
Для настройки диалоговой системы для NPC в Unity можно следовать следующим шагам:
1. Определение структуры диалога: Создайте структуру данных для хранения диалогов. Это может быть класс или структура, содержащая текст диалога, варианты ответов и ссылки на следующие реплики.
2. Создание интерфейса: Разработайте пользовательский интерфейс для отображения диалогов. Используйте UI элементы, такие как текстовые поля для отображения реплик и кнопки для выбора ответов.
3. Скрипт NPC: Напишите скрипт для NPC, который будет инициировать диалог при взаимодействии с игроком. Этот скрипт должен загружать соответствующий диалог из вашей структуры данных.
4. Система управления диалогом: Создайте класс, который будет управлять логикой диалога. Он должен обрабатывать выбор игрока, обновлять текст на экране и переходить к следующей реплике.
5. Сохранение и загрузка диалогов: Если диалоги сложные, можно использовать JSON или Scriptable Objects для хранения и загрузки данных диалога.
6. Тестирование и доработка: Протестируйте систему, чтобы убедиться, что все работает корректно, и внесите необходимые изменения для улучшения взаимодействия.
Эти шаги помогут вам создать базовую диалоговую систему для NPC в Unity.
🐸Библиотека собеса по С# | 1 075 |
| 18 | 😸 Каждый разработчик подходит к задаче со своим опытом: помнит прошлые решения, знает ограничения проекта и понимает, какой код команда пропустит на ревью.
Для человека это естественная часть работы. У Claude Code этого контекста по умолчанию нет — только задача и инструкции, которые ему дали.
Поэтому в большой команде недостаточно просто выбрать хорошую модель.
❗️ Нужно ещё объяснить ей, как у вас устроена разработка: какие подходы приняты, что обязательно проверять и по каким правилам принимать решения.
🗓 23 июля в 19:00 МСК поговорим об этом на бесплатном вебинаре с Алексеем Жиряковым — он Executive Director в Сбере, руководит
GenAI Data Platform, и с этой проблемой сталкивался не раз 🔥
Покажет живое демо, разберём, как встроить AI в процесс разработки так, чтобы он реально помогал, а не добавлял ещё один повод для споров на ревью.
🔗 Занять место на вебинаре
🏃♀️ Proglib Academy | 614 |
| 19 | Объясните, что такое локальная переменная в C#.
Локальными переменными называются переменные, которые определены в блоке кода. Они видны только в блоке кода, в котором они объявлены.
🐸Библиотека собеса по С# | 1 016 |
| 20 | Перечислите этапы компиляции кода на C#.
Вот четыре шага: предварительная обработка, компиляция, сборка, связывание.
🐸Библиотека собеса по С# | 1 271 |
