Вернуться в видеотекуКоротко о видео
В выпуске показано экспертное, демонстрационное Kotlin-собеседование: Владимир Тагаков из Lyft задаёт Данилу Попову из Bolt вопросы по языку и обсуждает ход рассуждений. Разбираются циклы и Range, object и инициализация классов, делегирование, sealed- и data-классы, nullable-типы, inline-функции, SAM-конверсия и KAPT. После основной секции участники дают обратную связь, обсуждают подход к интервью и отвечают на дополнительные вопросы про Android, производительность коллекций и Kotlin-инструменты.
Затронутые темы
Что взять на заметку
- На собеседовании ценны не только точные ответы: кандидат может честно обозначить пробел и последовательно объяснить, как проверил бы гипотезу или к чему пришёл бы рассуждением.
- Для Kotlin стоит повторить различия между обычным циклом, Range и forEach, включая читаемость, досрочный выход и последствия inline-обёрток.
- Нужно понимать порядок инициализации свойств, primary/secondary-конструкторов и init-блоков: порядок объявления полей может влиять на получаемые значения.
- При использовании nullable API не следует механически заменять проверки цепочками safe-call: по мнению участников, скрытое невалидное состояние иногда хуже быстрого падения с понятным stack trace.
- Sealed-классы полезны для закрытых моделей состояний и исчерпывающей обработки в when; при этом участники отдельно обсуждают компромисс между компактностью одной иерархии и разнесением реализаций по файлам.
- KAPT представлен как источник дополнительных стадий сборки через Java stubs и metadata; в разговоре KSP упоминается как направление, уменьшающее потребность в KAPT.
- Единый code style важен для Kotlin-команды: язык допускает много равноправных записей, поэтому правила нужны прежде всего для предсказуемого чтения и сопровождения кода.