fa
Feedback
Библиотека задач по C# | тесты, код, задания

Библиотека задач по C# | тесты, код, задания

رفتن به کانال در Telegram

Задачи и тесты по C# для тренировки и обучения. Учиться у нас: https://clc.to/3e1SCw По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197

نمایش بیشتر
4 964
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-117 روز
-2930 روز
آرشیو پست ها
Чем 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 Библиотека задач
Что выведет код? 👾 — 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#

У вас есть метод в .NET, который синхронно выполняет долгую I/O-операцию (например, обращение к HTTP API). При большом количестве одновременных вызовов приложение начинает “подвисать”. Какой из подходов будет наиболее правильным? 👾 — Обернуть вызов в Task.Run, чтобы выполнять его в пуле потоков 👍 — Переписать метод на async/await и использовать асинхронный HTTP-клиент (HttpClient.SendAsync) 🥰 — Увеличить количество потоков в ThreadPool, чтобы больше операций выполнялось параллельно. ⚡️ — Добавить lock вокруг вызова, чтобы избежать гонок Библиотека задач по C#

Какой из перечисленных static классов используется для операций ввода/вывода? 👾 — FileInfo 👍 — File 🥰 — Directory ⚡️ — Path 🐸Библиотека задач по C#

🔥 Знакомьтесь с экспертом Proglib.academy: Эмиль Сатаев Эмиль — эксперт с 8-летним опытом в разработке, который специализиру
🔥 Знакомьтесь с экспертом Proglib.academy: Эмиль Сатаев Эмиль — эксперт с 8-летним опытом в разработке, который специализируется на внедрении LLM и агентных подходов в реальные коммерческие сервисы. Он точно знает, как проектировать архитектуру так, чтобы ИИ-функции работали стабильно в связке с внешними системами. 🏃‍♀️ Уже 14 мая Эмиль проведет открытый вебинар! Обсудим самую «больную» тему: «Почему AI-продукты на базе LLM ломаются и как сделать, чтобы работало». 🗓 Когда: 14 мая в 19:00 (Мск) Почему Эмиля стоит послушать: 🟣 8+ лет в разработке (Backend и Frontend)
Прошел путь от фулстека до Backend Platform Developer в SMIT.Studio.
🟣 Международный исследовательский опыт
Работал исследователем в Институте ИИ НИУ ВШЭ и в Национальном университете Сингапура (NUS).
🟣 Преподаватель-практик
Ведет семинары в НИУ ВШЭ, в том числе по проектированию и разработке агентских систем.
🟣 Мастер интеграции AI в Backend
Его главная суперсила — умение правильно встраивать LLM через API, выстраивать workflow и агентную логику в сложных распределенных системах.
🔗 Зарегистрироваться на вебинар

Какое утверждение о ValueTask верно? 👾 — ValueTask можно безопасно ожидать сколь угодно раз, как и Task 👍 — ValueTask целесообразен, когда результат часто доступен синхронно; его корректно ожидать только один раз (если не преобразован в Task) 🥰 — ValueTask всегда аллоцирует меньше памяти, чем Task, вне зависимости от сценария ⚡️ — ValueTask ковариантен и неявно приводится к Task 🐸Библиотека задач по C#

Какие из перечисленных классов определены пространством имен System.Net? 👾 — Cookie 👍 —CookieContainer 🥰 — FileWebRequest ⚡️ — Все вышеперечисленное Библиотека задач по C#

Какие из перечисленных классов определены пространством имен System.Net? Cookie CookieContainer FileWebRequest Все вышеперечисленное Библиотека задач по C#

🗓 14 мая в 19:00 (Мск) встречаемся в онлайне. Тема: Почему AI-продукты на базе LLM ломаются и как сделать, чтобы работало. В кружке выше Эмиль Сатаев рассказал, какие именно проблемы с LLM в проде будем разбирать. Что в программе:
- Разберем реальные кейсы стартапов и ограничения LLM. - Обсудим рабочие архитектуры: RAG, human-in-the-loop, контроль качества. - Ответим на ваши вопросы и разберем кейсы участников.
🎁 Бонусы: в конце вебинара подарим промокод на скидку 10.000 ₽ на курсы и разыграем подписки на полезные AI-сервисы. 👉 Зарегистрироваться на вебинар

Какой из данных операторов позволяет получить адрес переменной? 👾 — ~ 👍 — ^ 🥰 — & ⚡️ — * Библиотека задач по C#

Библиотечный метод возвращает ValueTask<T> (часто завершается синхронно). В вызывающем коде результат нужно ждать несколько раз и/или комбинировать с другими задачами через Task.WhenAll. Что делать правильно? 👾 — ValueTask<T> можно await-ить сколько угодно раз — как Task<T> 👍 — Сконвертировать в Task<T> через .AsTask() и уже его ждать/комбинировать 🥰 — Обернуть в Task.Run(...), чтобы получить полноценную Task ⚡️ — Никогда не возвращать ValueTask<T> из публичных API — всегда только Task<T> Библиотека задач по C#

В проекте на Unity у вас есть несколько систем, активно использующих события (C# events и UnityEvent). Со временем возникают проблемы: трудно отследить подписчиков, растёт количество утечек памяти и появляются неожиданные вызовы. Какой подход будет наиболее правильным для масштабного проекта? 👾 — Использовать глобальные static события, чтобы упростить доступ к ним из любого места 👍 — Перейти на паттерн Event Bus / Message Broker (например, через ScriptableObjects или отдельный сервис), централизуя регистрацию и логирование подписчиков 🥰 — Удалять все события вручную в OnDestroy каждого объекта, избегая централизованных решений ⚡️ — Использовать UnityEvent вместо C# event, так как их можно настраивать через инспектор и это уменьшит ошибки Библиотека задач по C#

🦾 Почему ваши AI-продукты на базе LLM ломаются (и как это чинить)? Выкатили ИИ-фичу в прод, а она галлюцинирует, падает или
🦾 Почему ваши AI-продукты на базе LLM ломаются (и как это чинить)? Выкатили ИИ-фичу в прод, а она галлюцинирует, падает или выдает мусор? Приглашаем на открытый вебинар, где разберем реальную боль внедрения LLM-агентов и научимся делать так, чтобы «всё работало». 🗓 Когда: 14 мая в 19:00 МСК ⏱️ Формат: 60 минут мяса + 30 минут ответов на ваши вопросы 🧑🏻‍💻 Кто вещает: Эмиль Сатаев — Backend Platform Developer (8+ лет в разработке). Человек, который своими руками внедряет LLM и агентные системы в реальные коммерческие сервисы. 🎁 Главный бонус для онлайна: Только участникам прямого эфира подарим уникальный промокод на скидку 10.000 ₽ на большой курс AgentOps. 👉 Занять место на вебинаре