#Собес #boxing #memory #performance
🤔 Когда происходит боксинг?
💬 Кратко:
Боксинг происходит, когда тип значения (например, int или struct) преобразуется в ссылочный тип object. Это нужно, когда тип значения используется там, где ожидается object - например, при добавлении в коллекцию ArrayList. При этом создается новый объект в куче, что требует дополнительной памяти и времени. Распаковка (unboxing) - обратный процесс, когда object преобразуется обратно в тип значения.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Когда происходит боксинг?
💬 Кратко:
Боксинг происходит, когда тип значения (например, int или struct) преобразуется в ссылочный тип object. Это нужно, когда тип значения используется там, где ожидается object - например, при добавлении в коллекцию ArrayList. При этом создается новый объект в куче, что требует дополнительной памяти и времени. Распаковка (unboxing) - обратный процесс, когда object преобразуется обратно в тип значения.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #Entity_Framework #SaveChanges #SQL
🤔 Что делает метод SaveChanges() — отправляет ли он дополнительный запрос в базу для сравнения?
💬 Кратко:
Метод SaveChanges() не отправляет дополнительный запрос для сравнения. Он анализирует изменения, отслеживаемые контекстом (change tracker), и генерирует соответствующие SQL-команды INSERT, UPDATE или DELETE. Затем эти команды выполняются в одной транзакции. Дополнительных запросов на сравнение не требуется, так как EF Core отслеживает состояние каждой сущности.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что делает метод SaveChanges() — отправляет ли он дополнительный запрос в базу для сравнения?
💬 Кратко:
Метод SaveChanges() не отправляет дополнительный запрос для сравнения. Он анализирует изменения, отслеживаемые контекстом (change tracker), и генерирует соответствующие SQL-команды INSERT, UPDATE или DELETE. Затем эти команды выполняются в одной транзакции. Дополнительных запросов на сравнение не требуется, так как EF Core отслеживает состояние каждой сущности.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #HTTP_HEAD #HTTP_methods #REST_API
🤔 Для чего используется HEAD-запрос?
💬 Кратко:
HEAD-запрос похож на GET, но сервер не возвращает тело ответа. Он используется для проверки существования ресурса, получения метаданных (заголовков) или проверки времени последнего изменения без загрузки содержимого. Это экономит трафик и ускоряет работу.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Для чего используется HEAD-запрос?
💬 Кратко:
HEAD-запрос похож на GET, но сервер не возвращает тело ответа. Он используется для проверки существования ресурса, получения метаданных (заголовков) или проверки времени последнего изменения без загрузки содержимого. Это экономит трафик и ускоряет работу.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#documentation #http
📚 Все про HTTP
Тут собрано всё, что нужно знать про самый популярный протокол интернета
✓ Все статус-коды с понятными объяснениями
✓ Методы и заголовки
✓ Подборка инструментов для тестирования HTTP
✓ Чёткая инфа про HTTP/3
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Все про HTTP
Тут собрано всё, что нужно знать про самый популярный протокол интернета
✓ Все статус-коды с понятными объяснениями
✓ Методы и заголовки
✓ Подборка инструментов для тестирования HTTP
✓ Чёткая инфа про HTTP/3
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #sealed #inheritance #override
🤔 Что такое запечатанные (sealed) классы в C#?
💬 Кратко:
Запечатанный (sealed) класс не позволяет создавать от него производные классы. Это защищает класс от модификаций и обеспечивает его неизменяемость.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое запечатанные (sealed) классы в C#?
💬 Кратко:
Запечатанный (sealed) класс не позволяет создавать от него производные классы. Это защищает класс от модификаций и обеспечивает его неизменяемость.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #value_type #heap #boxing
🤔 В каких случаях значимый тип может оказаться в куче?
💬 Кратко:
Значимые типы в C# (например, int, struct) обычно хранятся в стеке, но могут оказаться в куче в нескольких случаях. Это происходит при упаковке (boxing), когда значение присваивается переменной типа object или интерфейса. Также, если структура является полем ссылочного типа (класса), она хранится в куче вместе с объектом. Ещё при использовании в замыканиях или асинхронных методах локальные значимые типы могут быть "подняты" в кучу.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 В каких случаях значимый тип может оказаться в куче?
💬 Кратко:
Значимые типы в C# (например, int, struct) обычно хранятся в стеке, но могут оказаться в куче в нескольких случаях. Это происходит при упаковке (boxing), когда значение присваивается переменной типа object или интерфейса. Также, если структура является полем ссылочного типа (класса), она хранится в куче вместе с объектом. Ещё при использовании в замыканиях или асинхронных методах локальные значимые типы могут быть "подняты" в кучу.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #planning
🤔 Как обычно организовано планирование и распределение задач в команде?
💬 Кратко:
Планирование задач обычно происходит итеративно, через спринты или канбан. Задачи формируются из бэклога и оцениваются командой. Распределение учитывает приоритеты и загрузку разработчиков. Frontend участвует в обсуждении сроков и сложности. Это помогает делать реалистичные планы.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Как обычно организовано планирование и распределение задач в команде?
💬 Кратко:
Планирование задач обычно происходит итеративно, через спринты или канбан. Задачи формируются из бэклога и оцениваются командой. Распределение учитывает приоритеты и загрузку разработчиков. Frontend участвует в обсуждении сроков и сложности. Это помогает делать реалистичные планы.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#video #архитектура
📚 Road to Highload: видеопроект о проектировании архитектуры высоконагруженных систем
Инженеры Яндекс 360 накопили значительный опыт в проектировании и разработке систем, которыми ежедневно пользуются больше 95 миллионов человек ежемесячно.
В этом видеопроекте разработчики на практических примерах рассказывают, как создают архитектуру систем, которые держат 1 000 000 RPS и хранят петабайты мета-данных.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Road to Highload: видеопроект о проектировании архитектуры высоконагруженных систем
Инженеры Яндекс 360 накопили значительный опыт в проектировании и разработке систем, которыми ежедневно пользуются больше 95 миллионов человек ежемесячно.
В этом видеопроекте разработчики на практических примерах рассказывают, как создают архитектуру систем, которые держат 1 000 000 RPS и хранят петабайты мета-данных.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #csharp #unity #architecture
🤔 Где применим паттерн MVC (или MV-паттерны в целом)?
💬 Кратко:
MVC и MV-паттерны применяются для разделения ответственности в UI-слое игр: интерфейсы меню, HUD элементы, системы настроек. Model хранит данные, View отображает интерфейс, Controller обрабатывает пользовательский ввод и обновляет Model.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Где применим паттерн MVC (или MV-паттерны в целом)?
💬 Кратко:
MVC и MV-паттерны применяются для разделения ответственности в UI-слое игр: интерфейсы меню, HUD элементы, системы настроек. Model хранит данные, View отображает интерфейс, Controller обрабатывает пользовательский ввод и обновляет Model.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #clr #.net #c#
🤔 Что такое Common Language Runtime (CLR)?
💬 Кратко:
CLR — это виртуальная машина, которая является частью .NET Framework. Она управляет выполнением программ, обеспечивая такие услуги, как управление памятью, многозадачностью, безопасность типов и удаленным вызовом. CLR также разделяет код на управляемый и неуправляемый, где управляемый код работает в его среде.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое Common Language Runtime (CLR)?
💬 Кратко:
CLR — это виртуальная машина, которая является частью .NET Framework. Она управляет выполнением программ, обеспечивая такие услуги, как управление памятью, многозадачностью, безопасность типов и удаленным вызовом. CLR также разделяет код на управляемый и неуправляемый, где управляемый код работает в его среде.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤1
#Собес #bulk_insert #copy #postgresql
🤔 Как выполнить массовую вставку данных в PostgreSQL?
💬 Кратко:
Для массовой вставки данных в PostgreSQL можно использовать команду
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Как выполнить массовую вставку данных в PostgreSQL?
💬 Кратко:
Для массовой вставки данных в PostgreSQL можно использовать команду
COPY или выполнить вставку данных с помощью нескольких строк в одном запросе INSERT. Оба метода значительно ускоряют процесс по сравнению с вставкой данных по одной строке за раз.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#article #highload #dotnet
📚 Система резервации на 600 заказов в секунду без буферизации и другой дичи
Автор подробно показывает, как создать высоконагруженный сервис резервирования остатков товаров в базе данных на .NET/C# и PostgreSQL, который способен обрабатывать сотни заказов в секунду без буферизации и лишних ухищрений. Он описывает архитектуру приложения, модель данных, настройки Entity Framework и схемы транзакционной обработки, объясняет, как гарантировать целостность данных и инвариант (чтобы резерв не превышал остаток), а также делится практическими примерами кода и оптимизаций для достижения высокой пропускной способности в условиях конкурентных обновлений
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Система резервации на 600 заказов в секунду без буферизации и другой дичи
Автор подробно показывает, как создать высоконагруженный сервис резервирования остатков товаров в базе данных на .NET/C# и PostgreSQL, который способен обрабатывать сотни заказов в секунду без буферизации и лишних ухищрений. Он описывает архитектуру приложения, модель данных, настройки Entity Framework и схемы транзакционной обработки, объясняет, как гарантировать целостность данных и инвариант (чтобы резерв не превышал остаток), а также делится практическими примерами кода и оптимизаций для достижения высокой пропускной способности в условиях конкурентных обновлений
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #copy #clone #array
🤔 В чем разница между методами System.Array.CopyTo() и System.Array.Clone()?
💬 Кратко:
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 В чем разница между методами System.Array.CopyTo() и System.Array.Clone()?
💬 Кратко:
CopyTo() копирует элементы из одного массива в другой, а Clone() создает новый массив, содержащий все элементы исходного массива.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #signalr #sse #grpc
🤔 Опыт работы с SignalR, SSE? Чем они отличаются от gRPC?
💬 Кратко:
- SignalR/SSE – для веб-клиентов (подписка на события).
- gRPC – для сервис-сервисного обмена (бинарный, мультиплексирование).
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Опыт работы с SignalR, SSE? Чем они отличаются от gRPC?
💬 Кратко:
- SignalR/SSE – для веб-клиентов (подписка на события).
- gRPC – для сервис-сервисного обмена (бинарный, мультиплексирование).
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #pod_network #networking #ip_allocation
🤔 Что такое Pod Network в Kubernetes?
💬 Кратко:
Pod Network – это виртуальная сеть, которая соединяет Pod-ы внутри кластера. Она позволяет Pod-ам взаимодействовать друг с другом без необходимости ручной настройки маршрутизации.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое Pod Network в Kubernetes?
💬 Кратко:
Pod Network – это виртуальная сеть, которая соединяет Pod-ы внутри кластера. Она позволяет Pod-ам взаимодействовать друг с другом без необходимости ручной настройки маршрутизации.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#trainer #курсы #тренажеры
📚 CodeChef
Онлайн-платформа программирования, которая позволяет учащимся осваивать программирование с помощью структурированных курсов, тысяч практических задач и регулярных конкурсов
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 CodeChef
Онлайн-платформа программирования, которая позволяет учащимся осваивать программирование с помощью структурированных курсов, тысяч практических задач и регулярных конкурсов
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #ValueType #ReferenceType #stack
🤔 Где хранятся ValueType и ReferenceType в памяти?
💬 Кратко:
ValueType (типы значений) хранятся в стеке (stack), если они являются локальными переменными в методе, или внутри объекта в куче, если они являются полями класса. ReferenceType (ссылочные типы) всегда хранятся в куче (heap), а в стеке или другом месте хранится только ссылка (адрес) на этот объект. Это различие влияет на производительность и поведение при присваивании: типы значений копируются по значению, а ссылочные типы — по ссылке. Понимание этого помогает избежать неожиданных изменений данных и оптимизировать использование памяти.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Где хранятся ValueType и ReferenceType в памяти?
💬 Кратко:
ValueType (типы значений) хранятся в стеке (stack), если они являются локальными переменными в методе, или внутри объекта в куче, если они являются полями класса. ReferenceType (ссылочные типы) всегда хранятся в куче (heap), а в стеке или другом месте хранится только ссылка (адрес) на этот объект. Это различие влияет на производительность и поведение при присваивании: типы значений копируются по значению, а ссылочные типы — по ссылке. Понимание этого помогает избежать неожиданных изменений данных и оптимизировать использование памяти.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #boxing #list #stack
🤔 Middle C# Backend разработчик в компанию Ozon
Техническое собеседование. Осень 2024. Просил 280к. Опыт в резюме: 3+ года. Говорили про C#, базы данных.
💬 Вопросы:
- Какие существуют типы индексов в PostgreSQL и когда их использовать?
- Какие есть типы соединений (JOIN) в PostgreSQL?
- В чём разница между WHERE и HAVING в SQL-запросах?
- В чём отличие кластеризованного и некластеризованного индекса? Когда их стоит применять?
- Каково может быть время жизни объекта в DI-контейнере и какие существуют варианты (singleton, transient, scoped)?
👉 Все вопросы из этого собеседования (18)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Middle C# Backend разработчик в компанию Ozon
Техническое собеседование. Осень 2024. Просил 280к. Опыт в резюме: 3+ года. Говорили про C#, базы данных.
💬 Вопросы:
- Какие существуют типы индексов в PostgreSQL и когда их использовать?
- Какие есть типы соединений (JOIN) в PostgreSQL?
- В чём разница между WHERE и HAVING в SQL-запросах?
- В чём отличие кластеризованного и некластеризованного индекса? Когда их стоит применять?
- Каково может быть время жизни объекта в DI-контейнере и какие существуют варианты (singleton, transient, scoped)?
👉 Все вопросы из этого собеседования (18)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #pagination #limit #offset
🤔 Какие проблемы с пагинацией через LIMIT OFFSET?
💬 Кратко:
Пагинация через
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Какие проблемы с пагинацией через LIMIT OFFSET?
💬 Кратко:
Пагинация через
LIMIT OFFSET может быть неэффективной на больших смещениях, потому что база данных должна пропустить OFFSET строк перед возвратом результата, что требует времени и ресурсов. Кроме того, при изменении данных (добавлении/удалении) между запросами могут возникать пропущенные или дублированные строки.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#video #api
📚 Разработка Web API на ASP.NET Core 5 и .NET 5
Используя чистую архитектуру (clean architecture), ASP NET Core 5, EF Core 5, Swagger, IdentityServer4, C#, SQLite, Fluent Validation, XUnit, NSwag Studio, Serilog, Automapper, MediatR, CQRS мы будем разрабатывать web api для работы с заметками.
Мы пройдемся по всем основным этапам разработки web api и в итоге получим масштабируемый, легко поддерживаемый проект Web API, сделанный с использованием good practices.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Разработка Web API на ASP.NET Core 5 и .NET 5
Используя чистую архитектуру (clean architecture), ASP NET Core 5, EF Core 5, Swagger, IdentityServer4, C#, SQLite, Fluent Validation, XUnit, NSwag Studio, Serilog, Automapper, MediatR, CQRS мы будем разрабатывать web api для работы с заметками.
Мы пройдемся по всем основным этапам разработки web api и в итоге получим масштабируемый, легко поддерживаемый проект Web API, сделанный с использованием good practices.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #linq #query #ienumerable
🤔 Что такое LINQ в C#?
💬 Кратко:
LINQ (Language Integrated Query) — это встроенный в C# инструмент для удобного запроса данных. Он позволяет работать с коллекциями, базами данных, XML и другими источниками с использованием SQL-подобного синтаксиса.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое LINQ в C#?
💬 Кратко:
LINQ (Language Integrated Query) — это встроенный в C# инструмент для удобного запроса данных. Он позволяет работать с коллекциями, базами данных, XML и другими источниками с использованием SQL-подобного синтаксиса.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа