На странице собраны вопросы по .NET — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, database, memory management.
ORM в .NET: Entity Framework и Dapper Entity Framework: полнофункциональный ORM с поддержкой LINQ, миграций и ленивой загрузки Dapper: лёгкий и быстрый микрофреймворк для работы с прямым SQL и минимальным уровнем…
Проблемы внедрения RabbitMQ Сложная настройка и конфигурирование системы для горизонтального масштабирования Вероятность появления узких мест при высокой нагрузке из-за использования single broker Трудности с…
Сколько стеков и куч может быть в .NET-приложении и что определяет их количество? стек выделяется для каждого потока, а куча используется для объектов число стеков соответствует количеству потоков (Thread) каждый…
Синхронность и асинхронность: различия и области применения область: параллелизм, выполнение кода синхронность — операции выполняются последовательно, а поток блокируется до их завершения асинхронность — операции…
Ключевые различия Dispose и Finalize в C# Dispose — метод интерфейса IDisposable, предназначенный для явного освобождения неуправляемых ресурсов. Его можно вызвать вручную либо использовать конструкцию using, чтобы…
Области применения: распределённые системы и обработка сообщений При at-least-once delivery сообщение гарантированно доставляется как минимум один раз. При сбоях и повторных попытках доставки могут появляться…
Ключевые различия между ref и out оба ключевых слова C# предназначены для передачи параметров в метод по ссылке ref требует, чтобы переменная была инициализирована до вызова метода out допускает неинициализированную…
Чем отличаются System.Array.CopyTo() и System.Array.Clone() System.Array.Clone() формирует поверхностную копию массива: создаётся новый объект массива, однако элементы ссылочного типа по-прежнему указывают на те же…
Многопоточность CPU-bound и асинхронность IO-bound в .NET: как работает async/await CPU-bound: вычислительные задачи активно используют процессор и требуют параллельных потоков (Thread, Task) для одновременного…
Чем различаются сигнатуры методов расширения LINQ для IEnumerable<T> и IQueryable<T> Для IEnumerable<T> методы получают Func<T, bool> (делегаты) и обрабатывают коллекцию в памяти: выполнение отложенное, но происходит…
Сервис-локатор и DI: различия, а также методы GetService и GetServices Сервис-локатор — это паттерн, при котором код напрямую запрашивает зависимости из контейнера При обычном Dependency Injection (DI) зависимости…
Разница между структурой и классом в C# структура относится к значимым типам, а класс — к ссылочным типам структура обычно размещается на стеке, тогда как экземпляр класса — в куче структуры не поддерживают…