Библиотека задач по C# | тесты, код, задания
Open in Telegram
Задачи и тесты по C# для тренировки и обучения. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/05448a24 Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197
Show more5 016
Subscribers
+324 hours
No data7 days
-430 days
Posts Archive
Какой базовый класс конструктора String()?
👾 — String
👍 — System.IO.String
🥰 — System.Strings
⚡️ — System.String
🐸Библиотека задач по C#
Какой из следующих классов является базовым для всех операций ввода/вывода из разных источников?
👾 — System.IO.Stream
👍 — System.IO.FileStream
🥰 — System.IO.MemoryStream
⚡️ — System.IO.NetworkStream
Библиотека задач по C#
У вас есть высоконагруженный .NET-сервис, который часто аллоцирует временные массивы байт при обработке запросов. Профилирование показывает давление на GC и рост пауз. Какой из подходов будет наиболее правильным?
👾 — Хранить все массивы в статическом списке, чтобы их не собирал GC
👍 — Использовать ArrayPool<byte>.Shared для повторного использования массивов
🥰 — Принудительно вызывать GC.Collect() после каждой партии запросов
⚡️ — Увеличить размер heap через настройки runtime
Библиотека задач по C#
ASP.NET Core сервис использует IHttpClientFactory и держит долгоживущие соединения к внешнему API. После смены DNS у апстрима трафик продолжает идти на старые IP. Как правильно исправить?
👾 — Создавать новый HttpClient на каждый запрос
👍 — Настроить у SocketsHttpHandler параметр PooledConnectionLifetime через IHttpClientFactory, чтобы периодически пересоздавать соединения и подхватывать новые DNS
🥰 — Уменьшить HttpClient.Timeout
⚡️ — Включить Expect: 100-continue
🐸Библиотека задач по C#
До 31 мая можно забрать любой курс Proglib Academy со скидкой 40%
Если давно хотели прокачаться в Python, ML, алгоритмах или AI-агентах, сейчас самое время выбрать программу и начать обучение по сниженной цене.
🎁 Разработка AI-агентов — от 49.000 ₽ (вместо 69.000 ₽)
Практический курс по разработке AI-агентов для автоматизации задач, работы и собственных проектов
🎁 Курс AgentOps — 129.000 ₽ (вместо 149.000 ₽)
Для разработчиков и LLM-инженеров, которые хотят внедрять AI-логику в бэкенд и сохранять стабильность сервиса.
🎁 Математика для разработки AI-моделей — 23.990 ₽ (вместо 31.990 ₽)
Практическая база по математике для анализа данных, ML и дальнейшего развития в AI.
🎁 Математика для Data Science — от 29.990 ₽ (вместо 39.990 ₽)
Курс для тех, кто хочет решать задачи, которые дают на собеседованиях на позицию дата-сайентиста в бигтехе.
🎁 ML для старта в Data Science — 28.990 ₽ (вместо 38.990 ₽)
Разберётесь в машинном обучении: от базовых понятий и линейных моделей до ансамблей, бустинга и рекомендательных систем.
🎁 Основы IT для непрограммистов — 16.990 ₽ (вместо 28.990 ₽)
Курс для IT-рекрутеров, маркетологов, проджектов, продактов и всех, кто работает с IT, но не пишет код.
🎁 Архитектуры и шаблоны проектирования — 27.990 ₽ (вместо 37.900 ₽)
Освоите основные паттерны проектирования и прокачаете навыки архитектора программного обеспечения.
🎁 Специалист по ИИ — 89.000 ₽ (вместо 113.900 ₽)
Курс для тех, кто хочет получить профессию в сфере ИИ, собрать портфолио из 5 проектов и научиться разрабатывать сложных AI-агентов.
🎁 Алгоритмы и структуры данных — 33.990 ₽ (вместо 57.990 ₽)
Подготовитесь к алгоритмическим собеседованиям, разберёте структуры данных и научитесь писать более эффективный код.
🎁 Программирование на языке Python — 27.990 ₽ (вместо 47.390 ₽)
Освоите Python на практике: без сухой теории, с пошаговой прокачкой навыков и итоговым проектом в портфолио.
🙌 Выбирайте курс по ссылке, оставляйте заявку, и менеджер поможет подобрать программу под ваши цели — https://clc.to/SALE40
В C# чем отличается struct от class?
👾 — Разницы нет, это взаимозаменяемые типы
👍 — struct — value type (хранится в стеке), class — reference type (в куче)
🥰 — struct можно наследовать от другого struct, а class — нет
⚡️ — class быстрее, чем struct, всегда
Библиотека задач по C#
Что из перечисленного является ActionSelectors?
👾 — ActionName
👍 — NonAction
🥰 — ActionVerbs
⚡️ — Все вышеперечисленное
Библиотека задач по C#
В .NET Core сервисе под нагрузкой заметили, что методы, возвращающие Task, часто создают лишние аллокации и нагружают GC. Какой подход наиболее правильный для оптимизации?
👾 — Всегда заменять Task на Thread, чтобы избежать аллокаций
👍 — Использовать ValueTask там, где результат часто доступен синхронно
🥰 — Оборачивать каждый метод в Task.Run, чтобы распределить нагрузку на пул потоков
⚡️ — Принудительно вызывать GC.Collect() после завершения асинхронных операций
Библиотека задач по C#
Какое из следующих утверждений верно относительно типа «string» в C#?
👾 — Строки изменяемы
👍 — Строки являются ссылочными типами
🥰 — Строки не могут быть нулевыми
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
В .NET Core приложении под нагрузкой замечены частые аллокации при работе с большими массивами, что вызывает давление на GC. Какой подход наиболее правильный?
👾 — Хранить массивы в static переменной, чтобы GC их не удалял
👍 — Использовать ArrayPool<T>.Shared для аренды и возврата массивов
🥰 — Создавать новые массивы на каждый запрос, чтобы избежать race conditions
⚡️ — Принудительно вызывать GC.Collect() после каждой партии запросов
Библиотека задач по C#
Какой из следующих языков программирования можно использовать с ASP.NET?
👾 — C# .NET
👍 — VB.NET
🥰 — Оба
⚡️ — Ни один
Библиотека задач по C#
Где вы читаете полезный IT-контент?
Интересуют источники, где не только новости, но и практика, разборы и реальные кейсы. Поделитесь в комментариях, можно 1-2 канала/автора, где читаете (TG / Habr / блог / X / GitHub) и какая тематика?
Чем IAsyncEnumerable<T> отличается от Task<IEnumerable<T>> для стриминга?
👾 — Ничем: оба буферизуют весь результат
👍 — IAsyncEnumerable<T> отдаёт элементы по мере готовности, без полной материализации; Task<IEnumerable<T>> возвращает коллекцию разом
🥰 — IAsyncEnumerable<T> не поддерживает отмену
⚡️ — Task<IEnumerable<T>> всегда быстрее
Библиотека задач по C#
Является ли C# языком программирования с безопасной типизацией?
👍 — Да
👾 — Нет
Библиотека задач по C#
Какое утверждение корректно описывает поведение struct с полями-ссылками (ref fields) и использованием ref struct в C#?
👾 — ref struct можно хранить в куче, если он вложен в класс, но доступ к нему осуществляется только по ссылке
👍 — ref struct запрещает захват в замыканиях, хранение в полях классов и boxing, чтобы гарантировать расположение в стеке
🥰 — Обычный struct с полями-ссылками (ref T) компилятор не ограничивает, и их можно хранить в куче без последствий
🥱 — ref struct может быть полем обычного struct, если оба находятся в куче
Библиотека задач по C#
В высоконагруженном сервисе на .NET вы используете ConcurrentDictionary<TKey, TValue> и вызываете GetOrAdd с фабричным делегатом, который выполняет дорогую инициализацию (например, обращение к БД). Что нужно учитывать?
👾 —
GetOrAdd гарантирует, что фабричный делегат вызовется ровно один раз для каждого ключа
🤔 — Фабричный делегат может быть вызван несколько раз для одного ключа при конкурентном доступе, но в словарь попадёт только одно значение
🥰— ConcurrentDictionary блокирует весь словарь на время выполнения фабрики
⚡️ — Использовать Lazy<TValue> в качестве значения, чтобы гарантировать однократную инициализацию
👍 — Варианты 2 и 4 верны
Библиотека задач по C#ASP.NET Core возвращает IAsyncEnumerable<T> (стриминг ответа). Как корректно отменять перечисление при разрыве клиента?
👾 — Ничего не делать — отмена произойдёт автоматически
👍 — await foreach (var x in stream) { … } без токена
🥰 — await foreach (var x in stream.WithCancellation(HttpContext.RequestAborted)) { … }
⚡️ — Обернуть в Task.Run и ловить OperationCanceledException
🐸Библиотека задач по C#Что выведет код?
👾 — 0 1 2 3 4
👍 — 4 3 2 1 0
🥰 — Случайный порядок чисел от 0 до 4
⚡️ — Compilation error
Библиотека задач по C#
Что верно об async void методах?
👾 — Эквивалентны async Task, их можно ожидать и ловить исключения в вызывающем коде
👍 — Исключения не возвращаются вызывающему; они всплывают в контекст синхронизации/UnhandledException, применять стоит только для обработчиков событий
🥰 — Компилятор запрещает async void во всех случаях
⚡️ — Их можно собирать в Task.WhenAll как обычные задачи
Библиотека задач по C#
Что из перечисленного является типом представления в MVC?
👾 — Partial view
👍 — Executable view
🥰 — Data view
⚡️ — Designer view
Библиотека задач по C#
Available now! Telegram Research 2025 — the year's key insights 
