Какой из данных операторов позволяет получить адрес переменной?
👾 — ~
👍 — ^
🥰 — &
⚡️ — *
Библиотека задач по C#
👾 — ~
👍 — ^
🥰 — &
⚡️ — *
Библиотека задач по C#
🥰19
This media is not supported in your browser
VIEW IN TELEGRAM
Тема: Почему AI-продукты на базе LLM ломаются и как сделать, чтобы работало.
В кружке выше Эмиль Сатаев рассказал, какие именно проблемы с LLM в проде будем разбирать.
Что в программе:
- Разберем реальные кейсы стартапов и ограничения LLM.
- Обсудим рабочие архитектуры: RAG, human-in-the-loop, контроль качества.
- Ответим на ваши вопросы и разберем кейсы участников.
🎁 Бонусы: в конце вебинара подарим промокод на скидку 10.000 ₽ на курсы и разыграем подписки на полезные AI-сервисы.
👉 Зарегистрироваться на вебинар
Please open Telegram to view this post
VIEW IN TELEGRAM
Какие из перечисленных классов определены пространством имен System.Net?
👾 — Cookie
👍 —CookieContainer
🥰 — FileWebRequest
⚡️ — Все вышеперечисленное
Библиотека задач по C#
👾 — Cookie
👍 —CookieContainer
🥰 — FileWebRequest
⚡️ — Все вышеперечисленное
Библиотека задач по C#
⚡12
Какое утверждение о ValueTask верно?
👾 — ValueTask можно безопасно ожидать сколь угодно раз, как и Task
👍 — ValueTask целесообразен, когда результат часто доступен синхронно; его корректно ожидать только один раз (если не преобразован в Task)
🥰 — ValueTask всегда аллоцирует меньше памяти, чем Task, вне зависимости от сценария
⚡️ — ValueTask ковариантен и неявно приводится к Task
🐸 Библиотека задач по C#
👾 — ValueTask можно безопасно ожидать сколь угодно раз, как и Task
👍 — ValueTask целесообразен, когда результат часто доступен синхронно; его корректно ожидать только один раз (если не преобразован в Task)
🥰 — ValueTask всегда аллоцирует меньше памяти, чем Task, вне зависимости от сценария
⚡️ — ValueTask ковариантен и неявно приводится к Task
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🥰4❤1🤔1
🔥 Знакомьтесь с экспертом Proglib.academy: Эмиль Сатаев
Эмиль — эксперт с 8-летним опытом в разработке, который специализируется на внедрении LLM и агентных подходов в реальные коммерческие сервисы. Он точно знает, как проектировать архитектуру так, чтобы ИИ-функции работали стабильно в связке с внешними системами.
🏃♀️ Уже 14 мая Эмиль проведет открытый вебинар!
Обсудим самую «больную» тему: «Почему AI-продукты на базе LLM ломаются и как сделать, чтобы работало».
🗓 Когда: 14 мая в 19:00 (Мск)
Почему Эмиля стоит послушать:
🟣 8+ лет в разработке (Backend и Frontend)
🟣 Международный исследовательский опыт
🟣 Преподаватель-практик
🟣 Мастер интеграции AI в Backend
🔗 Зарегистрироваться на вебинар
Эмиль — эксперт с 8-летним опытом в разработке, который специализируется на внедрении LLM и агентных подходов в реальные коммерческие сервисы. Он точно знает, как проектировать архитектуру так, чтобы ИИ-функции работали стабильно в связке с внешними системами.
Обсудим самую «больную» тему: «Почему AI-продукты на базе LLM ломаются и как сделать, чтобы работало».
🗓 Когда: 14 мая в 19:00 (Мск)
Почему Эмиля стоит послушать:
Прошел путь от фулстека до Backend Platform Developer в SMIT.Studio.
Работал исследователем в Институте ИИ НИУ ВШЭ и в Национальном университете Сингапура (NUS).
Ведет семинары в НИУ ВШЭ, в том числе по проектированию и разработке агентских систем.
Его главная суперсила — умение правильно встраивать LLM через API, выстраивать workflow и агентную логику в сложных распределенных системах.
🔗 Зарегистрироваться на вебинар
Please open Telegram to view this post
VIEW IN TELEGRAM
Какой из перечисленных static классов используется для операций ввода/вывода?
👾 — FileInfo
👍 — File
🥰 — Directory
⚡️ — Path
🐸 Библиотека задач по C#
👾 — FileInfo
👍 — File
🥰 — Directory
⚡️ — Path
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
У вас есть метод в .NET, который синхронно выполняет долгую I/O-операцию (например, обращение к HTTP API). При большом количестве одновременных вызовов приложение начинает “подвисать”. Какой из подходов будет наиболее правильным?
👾 — Обернуть вызов в Task.Run, чтобы выполнять его в пуле потоков
👍 — Переписать метод на async/await и использовать асинхронный HTTP-клиент (HttpClient.SendAsync)
🥰 — Увеличить количество потоков в ThreadPool, чтобы больше операций выполнялось параллельно.
⚡️ — Добавить lock вокруг вызова, чтобы избежать гонок
Библиотека задач по C#
👾 — Обернуть вызов в Task.Run, чтобы выполнять его в пуле потоков
👍 — Переписать метод на async/await и использовать асинхронный HTTP-клиент (HttpClient.SendAsync)
🥰 — Увеличить количество потоков в ThreadPool, чтобы больше операций выполнялось параллельно.
⚡️ — Добавить lock вокруг вызова, чтобы избежать гонок
Библиотека задач по C#
👍21😁1
Что из перечисленного является типом представления в MVC?
👾 — Partial view
👍 — Executable view
🥰 — Data view
⚡️ — Designer view
Библиотека задач по C#
👾 — Partial view
👍 — Executable view
🥰 — Data view
⚡️ — Designer view
Библиотека задач по C#
👾9🤔2
Что верно об async void методах?
👾 — Эквивалентны async Task, их можно ожидать и ловить исключения в вызывающем коде
👍 — Исключения не возвращаются вызывающему; они всплывают в контекст синхронизации/UnhandledException, применять стоит только для обработчиков событий
🥰 — Компилятор запрещает async void во всех случаях
⚡️ — Их можно собирать в Task.WhenAll как обычные задачи
Библиотека задач по C#
👾 — Эквивалентны async Task, их можно ожидать и ловить исключения в вызывающем коде
👍 — Исключения не возвращаются вызывающему; они всплывают в контекст синхронизации/UnhandledException, применять стоит только для обработчиков событий
🥰 — Компилятор запрещает async void во всех случаях
⚡️ — Их можно собирать в Task.WhenAll как обычные задачи
Библиотека задач по C#
👍24
Что выведет код?
👾 — 0 1 2 3 4
👍 — 4 3 2 1 0
🥰 — Случайный порядок чисел от 0 до 4
⚡️ — Compilation error
Библиотека задач по C#
👾 — 0 1 2 3 4
👍 — 4 3 2 1 0
🥰 — Случайный порядок чисел от 0 до 4
Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
👾33
ASP.NET Core возвращает IAsyncEnumerable<T> (стриминг ответа). Как корректно отменять перечисление при разрыве клиента?👾 — Ничего не делать — отмена произойдёт автоматически
👍 — await foreach (var x in stream) { … } без токена
🥰 — await foreach (var x in stream.WithCancellation(HttpContext.RequestAborted)) { … }
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰17
В высоконагруженном сервисе на .NET вы используете ConcurrentDictionary<TKey, TValue> и вызываете GetOrAdd с фабричным делегатом, который выполняет дорогую инициализацию (например, обращение к БД). Что нужно учитывать?
👾 —
🤔 — Фабричный делегат может быть вызван несколько раз для одного ключа при конкурентном доступе, но в словарь попадёт только одно значение
🥰—
⚡️ — Использовать
👍 — Варианты 2 и 4 верны
Библиотека задач по C#
👾 —
GetOrAdd гарантирует, что фабричный делегат вызовется ровно один раз для каждого ключа 🤔 — Фабричный делегат может быть вызван несколько раз для одного ключа при конкурентном доступе, но в словарь попадёт только одно значение
🥰—
ConcurrentDictionary блокирует весь словарь на время выполнения фабрики ⚡️ — Использовать
Lazy<TValue> в качестве значения, чтобы гарантировать однократную инициализацию 👍 — Варианты 2 и 4 верны
Библиотека задач по C#
👍7
Какое утверждение корректно описывает поведение struct с полями-ссылками (ref fields) и использованием ref struct в C#?
👾 — ref struct можно хранить в куче, если он вложен в класс, но доступ к нему осуществляется только по ссылке
👍 — ref struct запрещает захват в замыканиях, хранение в полях классов и boxing, чтобы гарантировать расположение в стеке
🥰 — Обычный struct с полями-ссылками (ref T) компилятор не ограничивает, и их можно хранить в куче без последствий
🥱 — ref struct может быть полем обычного struct, если оба находятся в куче
Библиотека задач по C#
👾 — ref struct можно хранить в куче, если он вложен в класс, но доступ к нему осуществляется только по ссылке
👍 — ref struct запрещает захват в замыканиях, хранение в полях классов и boxing, чтобы гарантировать расположение в стеке
🥰 — Обычный struct с полями-ссылками (ref T) компилятор не ограничивает, и их можно хранить в куче без последствий
🥱 — ref struct может быть полем обычного struct, если оба находятся в куче
Библиотека задач по C#
👍11❤1🎉1
👍62🤔1😢1👾1
Чем IAsyncEnumerable<T> отличается от Task<IEnumerable<T>> для стриминга?
👾 — Ничем: оба буферизуют весь результат
👍 — IAsyncEnumerable<T> отдаёт элементы по мере готовности, без полной материализации; Task<IEnumerable<T>> возвращает коллекцию разом
🥰 — IAsyncEnumerable<T> не поддерживает отмену
⚡️ — Task<IEnumerable<T>> всегда быстрее
Библиотека задач по C#
👾 — Ничем: оба буферизуют весь результат
👍 — IAsyncEnumerable<T> отдаёт элементы по мере готовности, без полной материализации; Task<IEnumerable<T>> возвращает коллекцию разом
🥰 — IAsyncEnumerable<T> не поддерживает отмену
⚡️ — Task<IEnumerable<T>> всегда быстрее
Библиотека задач по C#
👍25
Где вы читаете полезный IT-контент?
Интересуют источники, где не только новости, но и практика, разборы и реальные кейсы. Поделитесь в комментариях, можно 1-2 канала/автора, где читаете (TG / Habr / блог / X / GitHub) и какая тематика?
Интересуют источники, где не только новости, но и практика, разборы и реальные кейсы. Поделитесь в комментариях, можно 1-2 канала/автора, где читаете (TG / Habr / блог / X / GitHub) и какая тематика?
Какой из следующих языков программирования можно использовать с ASP.NET?
👾 — C# .NET
👍 — VB.NET
🥰 — Оба
⚡️ — Ни один
Библиотека задач по C#
👾 — C# .NET
👍 — VB.NET
🥰 — Оба
⚡️ — Ни один
Библиотека задач по C#
🥰30
В .NET Core приложении под нагрузкой замечены частые аллокации при работе с большими массивами, что вызывает давление на GC. Какой подход наиболее правильный?
👾 — Хранить массивы в static переменной, чтобы GC их не удалял
👍 — Использовать ArrayPool<T>.Shared для аренды и возврата массивов
🥰 — Создавать новые массивы на каждый запрос, чтобы избежать race conditions
⚡️ — Принудительно вызывать GC.Collect() после каждой партии запросов
Библиотека задач по C#
👾 — Хранить массивы в static переменной, чтобы GC их не удалял
👍 — Использовать ArrayPool<T>.Shared для аренды и возврата массивов
🥰 — Создавать новые массивы на каждый запрос, чтобы избежать race conditions
⚡️ — Принудительно вызывать GC.Collect() после каждой партии запросов
Библиотека задач по C#
👍21
Какое из следующих утверждений верно относительно типа «string» в C#?
👾 — Строки изменяемы
👍 — Строки являются ссылочными типами
🥰 — Строки не могут быть нулевыми
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
👾 — Строки изменяемы
👍 — Строки являются ссылочными типами
🥰 — Строки не могут быть нулевыми
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
👍28
В .NET Core сервисе под нагрузкой заметили, что методы, возвращающие Task, часто создают лишние аллокации и нагружают GC. Какой подход наиболее правильный для оптимизации?
👾 — Всегда заменять Task на Thread, чтобы избежать аллокаций
👍 — Использовать ValueTask там, где результат часто доступен синхронно
🥰 — Оборачивать каждый метод в Task.Run, чтобы распределить нагрузку на пул потоков
⚡️ — Принудительно вызывать GC.Collect() после завершения асинхронных операций
Библиотека задач по C#
👾 — Всегда заменять Task на Thread, чтобы избежать аллокаций
👍 — Использовать ValueTask там, где результат часто доступен синхронно
🥰 — Оборачивать каждый метод в Task.Run, чтобы распределить нагрузку на пул потоков
⚡️ — Принудительно вызывать GC.Collect() после завершения асинхронных операций
Библиотека задач по C#
👍17