В этой подборке вопросы сгруппированы по формату «Поведенческие вопросы», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, database, async.
Иерархия исключений Python Все исключения наследуются от базового класса BaseException Ключевым классом для ошибок служит Exception: от него производятся все пользовательские исключения Подклассы Exception объединены…
NavigationStack и NavigationView в SwiftUI SwiftUI: пользовательский интерфейс и навигация от Apple NavigationView: устаревающий контейнер для иерархической навигации NavigationStack: современный и гибкий навигатор,…
Как работает формат соединения WebSocket? протокол для двунаправленного обмена данными поверх TCP соединение начинается с HTTP/HTTPS рукопожатия (handshake) клиент отправляет HTTP-запрос с заголовком Upgrade:…
Как устроены wait() и notify() и где их разрешено вызывать? средства синхронизации в Java, основанные на объектном мониторе wait() — освобождает монитор и переводит поток в режим ожидания notify() — будит один поток,…
Как устроены миграции БД? Практика реализации миграций Позволяют управлять изменениями схемы БД во времени Фиксируют последовательность изменений DDL Миграции представляют собой версионируемые скрипты для создания,…
Как устроены некластеризованные индексы? База данных использует индекс для поиска записей в таблице Индекс представляет собой самостоятельную структуру, например B-дерево В нём хранятся ключи и ссылки на строки данных…
SQL-инструмент для выполнения аналитических вычислений над набором строк Они анализируют окно строк относительно текущей записи, не объединяя результат в одну строку Границы окна задаются конструкцией OVER(), где…
Поколения (generations) и условия запуска сборщика мусора Поколения — это подход к управлению памятью, при котором объекты распределяются по продолжительности жизни: на молодое (new), старое (old) и, в некоторых…
структура данных, предназначенная для хранения упорядоченной последовательности элементов на практике чаще всего реализуются в виде связных списков или массивов связный список: узлы соединяются указателями, память…
память разделяется между стеком и кучей стек принадлежит конкретному потоку и содержит его локальные переменные и вызовы функций при многопоточном выполнении каждый поток использует собственный независимый стек,…
Node.js — среда выполнения JavaScript на сервере, а не в браузере браузерный фронтенд не обращается к Node.js напрямую: для этого нет API браузера обмен выполняется через HTTP-запросы (REST, GraphQL) к бэкенду на…
Хранение крупных бинарных данных (BinaryField) в Postgres Для бинарных данных Postgres предоставляет тип bytea его предельный размер составляет примерно 1 ГБ на одну строку для более объемных файлов целесообразно…