Подборка объединяет вопросы, отмеченные на этапах интервью в LeroyMerlin. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: architecture, android, mobile.
инструмент оптимизации, реализованный на уровне компилятора Kotlin функция, объявленная с ключевым словом inline компилятор подставляет ее тело непосредственно в место вызова снижает накладные расходы, связанные с…
Сравнение Dagger, Hilt и Koin по производительности, настройке и безопасности Dagger: производительность — код генерируется во время компиляции, поэтому runtime работает очень быстро и использует нативный код…
Как устроен UI-поток с Looper и Handler и зачем нужен main.immediate? В Android UI-поток является главным потоком, в котором работает Looper Looper последовательно обрабатывает очередь сообщений (MessageQueue) С…
Как устроена suspend-функция в Kotlin под капотом: стейт-машина? Kotlin coroutines позволяют создавать асинхронный код без блокировки потоков при компиляции suspend-функция превращается в стейт-машину с набором…
Как устроены миграции БД? Практика реализации миграций Позволяют управлять изменениями схемы БД во времени Фиксируют последовательность изменений DDL Миграции представляют собой версионируемые скрипты для создания,…
Альтернативы Retrofit (Ktor): преимущества и недостатки Retrofit: декларативный HTTP-клиент со встроенным парсингом JSON через Gson или Moshi Ktor client: асинхронный клиент на основе корутин с гибкой конфигурацией и…
Почему мультимодульность лучше монолита архитектура строится из самостоятельных модулей повышаются модульность и понятность кода команды могут вести параллельную разработку уменьшается область влияния изменений:…
Примитивы синхронизации: synchronized, Atomic, семафоры synchronized блокирует метод или отдельный блок кода и обеспечивает взаимное исключение (mutex). Примитив удобен, однако при неправильном применении может…
Проблемы 64-битных примитивов в многопоточной среде Контекст: многопоточность и работа с примитивными типами На 32-битных системах чтение и запись 64-битных long и double могут выполняться неатомарно При отсутствии…
Какие типы в Compose считаются стабильными и почему List нестабилен? Stable (стабильный) тип — это тип, состояние которого не изменяется без явного уведомления Compose К таким типам обычно относят примитивы, data…
Когда выбирать Int32 или Int64? (различия целочисленных типов в языках программирования) Тип Int обычно обозначает целое число фиксированного размера, например Int32 или Int64. Определяющими факторами служат…
автоматическая выгрузка возможна только при наличии стабильных данных и готовых артефактов для маркетплейса особенно опасна публикация недоработанного или нестабильного билда исключение этого шага уменьшает риск…