Библиотека задач по C# | тесты, код, задания – Telegram
Библиотека задач по C# | тесты, код, задания
5.04K subscribers
445 photos
4 videos
522 links
Задачи и тесты по C# для тренировки и обучения.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/05448a24

Для обратной связи: @proglibrary_feeedback_bot

Наши каналы: https://news.1rj.ru/str/proglibrary/9197
Download Telegram
Что происходит с продолжениями (ContinueWith/await) при вызове SetResult у TaskCompletionSource, и как избежать их исполнения «в линию» на потоке вызывающего?

👾 — Всегда выполняются в пуле потоков; ничего делать не нужно
👍 — Могут выполниться синхронно на вызывающем потоке; используйте new TaskCompletionSource(TaskCreationOptions.RunContinuationsAsynchronously)
🥰 — Всегда возвращаются в захваченный SynchronizationContext; нужен ConfigureAwait(false)
⚡️ — Выполняются синхронно только если задача уже завершена

Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍1
Что верно об async void методах?

👾 — Эквивалентны async Task, их можно ожидать и ловить исключения в вызывающем коде
👍 — Исключения не возвращаются вызывающему; они всплывают в контекст синхронизации/UnhandledException, применять стоит только для обработчиков событий
🥰 — Компилятор запрещает async void во всех случаях
⚡️ — Их можно собирать в Task.WhenAll как обычные задачи

Библиотека задач по C#
👍31🥰1
Что выведет код?

👾
— One
👍 — Two
🥰 — Three
⚡️ — Default

Библиотека задач по C#
🥰53🥱4🤔21👏1
Зачем использовать IHttpClientFactory вместо создания нового HttpClient на каждый запрос?

👾 — Чтобы отключить DNS-кеш и ускорить повторы
👍 — Чтобы переиспользовать SocketsHttpHandler, избежать socket exhaustion и централизовать политики таймаутов/ретраев
🥰 — Чтобы все запросы шли через один и тот же IP
⚡️ — Чтобы сделать запросы синхронными и без аллокаций

Библиотека задач по C#
👍301
Дано List<Point> где Point — struct с изменяемым X. Что сделает код?
foreach (var p in points) { p.X++; }

👾 — Увеличит X у всех элементов
👍 — Скомпилируется, но ничего в списке не изменит
🥰 — Не скомпилируется из-за запрета изменять struct в foreach
⚡️ — Изменит только первый элемент

Библиотека задач по C#
👍29🥰15👾61
Можно ли объявить собственный конструктор без параметров у struct?

👾 — Да, начиная с C# 10
⚡️ — Нет

Библиотека задач по C#
👾41😢2
Что верно про ValueTask?

👾 — Всегда быстрее Task
👍 — Можно безопасно ожидать многократно
🥰 — Ожидать можно один раз; для повторных — AsTask()
⚡️ — Экземпляры стоит кэшировать и переиспользовать

Библиотека задач по C#
🥰27👾1
Что выведет Console.WriteLine(Math.PI);?

👾 — 3.14
👍 — 3.14159
🥰 — Error

Библиотека задач по C#
👍57🥰3🌚2
В ASP.NET Core что даёт ConfigureAwait(false)?

👾 — Нужен всегда, иначе дедлок
👍 — Обычно избыточен (нет SynchronizationContext), но harmless и может чуть снизить накладные расходы
🥰 — Запрещает выполнение на thread pool
⚡️ — Переключает на UI-поток

Библиотека задач по C#
👍321👾1
Что верно про Terraform?

👾 — Не идемпотентен
👍 — plan изменяет инфраструктуру
🥰 — Состояние (state) нужно хранить удалённо и блокировать
⚡️ — Провайдеры не влияют на детерминизм

Библиотека задач по C#
👍6🌚61🥰1😢1
В большом Unity-проекте вы замечаете регулярные просадки FPS при загрузке сцен и подгрузке ассетов во время игры. Какой из подходов будет наиболее правильным для минимизации этих проблем?

👾 — Использовать Resources.Load для загрузки всех объектов при старте игры, чтобы во время выполнения не было подгрузок
👍 — Перенести все ассеты в Addressables и использовать асинхронную загрузку (Addressables.LoadAssetAsync), чтобы управлять памятью и подгрузкой по мере необходимости.
🥰 —Увеличить количество потоков в настройках Unity Player, чтобы сцена загружалась быстрее
⚡️ — Отключить VSync, чтобы повысить FPS и скрыть фризы от пользователя

Библиотека задач по C#
👍81
Может ли интерфейс наследоваться от одного или нескольких интерфейсов?

👾 — Да
⚡️ — Нет

Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
👾833🌚2🥰1
Боксинг в .Net позволяет пользователю конвертировать

👾 — тип integer в double
👍 — тип reference в тип value
🥰 — тип value в тип reference
⚡️ — тип double в integer

🐸Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰66👾2
Необходимо ли использование оператора return в каждой функции в C#?

👾 — Да
⚡️ — Нет

🐸Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
59👾5
Где возможна скрытая аллокация (boxing) при foreach?

👾 — По List<int>
👍 — По IEnumerable<int> поверх List<int>
🥰 — По массиву int[]
⚡️ — В обычном for

🐸Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
👍34
Что выведет код?

👾 — 10
👍 — 55
🥰 — Compile-time error
⚡️ — Runtime error

Библиотека задач по C#
👍73🥰421
В .NET Core приложении вы заметили частые паузы из-за работы GC. Профилирование показывает большое количество короткоживущих объектов, создаваемых внутри горячих методов. Какой подход наиболее правильный для оптимизации?

👾 — Увеличить размер heap в настройках CLR
👍 — Снизить количество аллокаций, используя Span<T>, пулы объектов (ArrayPool<T>, ObjectPool<T>) и минимизацию временных коллекций
🥰 — Принудительно вызывать GC.Collect() после каждого запроса
⚡️ — Перевести все классы в struct, чтобы они хранились на стеке

Библиотека задач по C#
👍33👾1
За год мы провели три потока курса по ИИ-агентам, а теперь запускаем масштабное обновление!

В новом, четвёртом потоке мы учли все пожелания студентов, добавили большой блок про AgentOps и сместили фокус с базовых концепций на суровый инжиниринг. Решить алгоритмическую задачку на C легко, а вот выкатить ИИ-агента, который не сливает бюджет на токены и стабильно работает в проде — задача со звёздочкой.

В программе:

— практика с первого занятия: Jupyter-ноутбуки с автопроверкой;
— оркестрация в LangGraph: human-in-the-loop и механизм time-travel;
— продвинутый RAG для продакшена и парсинг сложных документов;
— контроль экономики агентов: маршрутизация и кеширование запросов;
— развёртывание локальных опенсорс-моделей с соблюдением 152-ФЗ.

В честь старта продаж действует спецпредложение: 3 курса по цене 1 (два дополнительных курса в подарок).

Доступ к материалам для предварительной подготовки откроется сразу после оплаты.

По промокоду Agent забирайте скидку 10 000 ₽ (89 000 ₽ вместо 99 000 ₽). Успейте занять место
до 28 февраля!

👉 Присоединиться к четвёртому потоку и вывести агентов в прод
Если вы хотите добавить массив в ArrayList, то какой метод ArrayList будете использовать?

👾 — AddRange
👍 — Add
🥰 — AddArray
⚡️ — Ничего из вышеперечисленного

Библиотека задач по C#
👾283
Что из перечисленного используется для реализации наследования в C#?

👾 — class Derived : Base
👍 — class Derived inherits Base
🥰 — class Derived extends Base
⚡️ — Ничего из вышеперечисленного

Библиотека задач по C#
👾52👍1🤔1
Последний шанс: 3 курса по цене 1 и запуск AI-агентов в продакшн

Решать алгоритмические задачи на C# — отличная тренировка, а заставить автономных ИИ-агентов работать без утечек бюджета — вызов нового уровня. Как контролировать затраты на LLM, маршрутизировать мультиагентные системы и не нарушить 152-ФЗ?

Обновлённая программа делает упор на жёсткий инжиниринг и вывод в прод. Вы научитесь строить ReAct-циклы, работать с LangGraph и AutoGen, внедрять продвинутый RAG, протоколы MCP и AgentOps. Все ключевые навыки в одном месте: измеримость систем, time-travel дебаггинг, управление браузером, human-in-the-loop и развёртывание в закрытых контурах.

Почему нельзя откладывать:

— масштабная акция «3 курса по цене 1» сгорает уже сегодня;
— промокод Agent на скидку 10 000 рублей действует последние часы;
— сразу после оформления открываются материалы для подготовки — начать учиться можно прямо сейчас.

Забронировать место на курсе и забрать бонусы до конца дня