ValueTask часто хвалят за экономию памяти. Но если использовать его в публичном API, потребители могут не оценить такой шаг.
Вопрос: чем так плох ValueTask в публичном API? Он же снизит аллокации
Ответ:
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3😢1
Что такое абстракция в ООП?
Звучит просто, но можно запутаться между абстракцией, интерфейсами и абстрактными классами.
Ключевое слово здесь — упрощение. Абстракция —
Всё остальное — несущественные детали.
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Разбираем вопрос с собеса, в этот раз про Span.
Span<T> даёт доступ к памяти без копий и аллокаций. Но почему его сделали ref struct с кучей запретов, и когда лучше взять Memory<T>?Ответ
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🌚2😢1
В коде спрятан намёк на обновление, которое принёс нам C# 10 версии. Может публичные поля? Или конструктор.. Явно что-то связанное со структурой.
👉 Ответ 👈
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
Сделали сниппет кода на манер JavaScript, складываем число и строку. В C#, в отличие от JS, это операция предсказуемая и можно догадаться о результате.
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Вопрос с собеса
Классика интервью:
На собесе часто ловят на вопросе «когда использовать». Многие говорят просто «для безопасности», но это неправильный ответ.
Правильный ответ, который ждут на собесе ждёт только вас в нашем канале с вопросами с собесов
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека шарписта
#dotnet_challenge
Классика интервью:
Что такое readonly struct и чем он отличается от обычной структуры
На собесе часто ловят на вопросе «когда использовать». Многие говорят просто «для безопасности», но это неправильный ответ.
Правильный ответ, который ждут на собесе ждёт только вас в нашем канале с вопросами с собесов
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
Предлагаем ответить на вопрос с собеседования:
Что делает оператор using в C#
Почти каждый C#-разработчик писал такой код сотни раз:
using (var connection = new SqlConnection(connectionString))
{
// работаем с ресурсом
}
На первый взгляд — просто синтаксический сахар.
Подсказка:
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱16👍6
Эндпоинт возвращает тысячи записей. Что происходит, если просто сделать
return Ok(list)?Правильно — всё копится в памяти. Сервер ждёт, пока соберётся весь ответ, только потом отправляет клиенту. При высокой нагрузке это убивает и память, и растёт задержка.
Возникает вопрос:
Как не держать весь ответ в памяти и какими инструментами воспользоваться?
Данные можно отдавать данные по мере готовности, без лишних аллокаций и с контролем над потоком.
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8
Представьте: TTL кэша истёк, и сотни запросов одновременно обнаружили пустой кэш. Все ломятся в базу за одним и тем же значением. Это называется cache stampede.
Как бы вы это решили? Какой примитив синхронизации выбрать, чтобы первый запрос шёл в БД, а остальные ждали его результата?
Подумайте и проверьте свой ответ здесь: @csharp_interview_lib
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
На технических интервью по C# для джунов и иногда для мидлов вопрос про перегрузки и переопределения задаётся одним из первых.
Оба механизма связаны с методами и их именами. Оба выглядят похоже на первый взгляд. Но работают они в совершенно разных ситуациях и решают разные задачи.
Разница между ними принципиальная. Один работает на уровне компиляции, другой на уровне выполнения программы. Один не требует наследования, другой без него невозможен.
📍 Навигация: Вакансии • Задачи • Собесы
#dotnet_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱4👍2