В этой подборке вопросы сгруппированы по формату «Поведенческие вопросы», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, database, async.
Event Loop: что и в каком порядке появится в консоли? Event Loop — механизм асинхронного управления очередями задач в JS Все задачи относятся к двум категориям: микротаски (Promises, process.nextTick) и макротаски…
Колбэки MutationObserver: микротаски или макротаски? MutationObserver — API для наблюдения за изменениями в DOM. Колбэки MutationObserver помещаются в очередь микротасков. Они запускаются после завершения всех…
REST и брокеры сообщений: плюсы, минусы и сценарии REST использует синхронную модель запрос-ответ поверх HTTP/HTTPS Брокеры сообщений выступают асинхронными посредниками, например RabbitMQ и Kafka REST прост в…
Когда AlarmManager предпочтительнее WorkManager? Планирование задач, которым требуется точное время запуска Сохранение работоспособности после перезагрузки устройства Выполнение даже при закрытом приложении…
in-memory хранилище, объём которого ограничен доступной RAM не подходит для данных, которым требуется гарантированная долговечность имеет ограниченные возможности для сложных запросов и аналитики неэффективен при…
Когда synchronized недостаточно для предотвращения гонки потоков? синхронизация выполняется с помощью мониторного замка механизм действует на уровне одного объекта (монитора) недостаточен при зависимостях между…
на больших таблицах с частыми операциями insert/update/delete, поскольку обновление индексов создаёт дополнительные накладные расходы в запросах, фильтрующих по низкораспределённым или часто повторяющимся значениям,…
В каких случаях стоит выбирать хэш-индексы? область применения: базы данных и индексация оптимальный вариант для поиска по точному равенству амортизированная сложность поиска, вставки и удаления составляет примерно…
В каких случаях стоит выбрать собственную реализацию вместо Addressables? Контекст: управление ресурсами в Unity Addressables — мощная и комплексная система, предназначенная для загрузки и управления ассетами…
В каких случаях следует использовать Hash-индексы? Предназначены для индексации при точном поиске ключей Дают доступ за константное время O(1) Не подходят для диапазонных запросов и сортировки Наиболее эффективны при…
В каких случаях следует использовать корутины? организация лёгкой конкуренции выполнение асинхронных операций без блокировки запуск параллельных задач с меньшими издержками, чем у потоков удобная работа в реактивном…
В каких случаях следует применять кэширование? ускорить работу системы и сократить время ответа уменьшить нагрузку на базы данных и другие ключевые ресурсы обрабатывать повторяющиеся запросы к одним и тем же данным…