Подборка объединяет вопросы, отмеченные на этапах интервью в Viasat tech. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: mobile, kotlin, android.
В Kotlin функция, объявленная с модификатором crossinline, запрещает выполнение неконтролируемого возврата (non-local return) из лямбды, которую она принимает.
Это полезно, когда вы изменили параметры, влияющие на размер или расположение View, и хотите немедленно обновить его отображение, не дожидаясь следующего цикла обновления UI.
При смене конфигурации устройства (например, поворот экрана, смена языка или изменение размера экрана) Android по умолчанию уничтожает текущую Activity и создает её заново, чтобы применить новые настройки.
GlobalScope в Kotlin Coroutines создаёт корутины, которые живут столько же, сколько приложение, и не привязаны к жизненному циклу компонентов. Это значит, что такие корутины:
AssistedInject в Dagger — это механизм, который позволяет комбинировать автоматическое внедрение зависимостей с передачей некоторых параметров вручную при создании объекта.
В языке Kotlin тип Nothing используется для обозначения функции или выражения, которые никогда не возвращают значение, то есть не завершаются нормально.