Подборка объединяет вопросы, отмеченные на этапах интервью в amoCRM. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: mobile, frontend, android.
В Kotlin корутины используют различные области видимости (CoroutineScope), которые определяют жизненный цикл и контекст выполнения корутины. Основные типы областей видимости:
Для добавления анимации при изменении расположения элементов в пользовательском интерфейсе Android можно использовать класс LayoutTransition или библиотеку MotionLayout.
Sealed классы используются для представления ограниченной иерархии наследования, где все подклассы известны на этапе компиляции. Enum классы используются для представления фиксированного набора констант.
В Java анонимные функции можно реализовать с помощью Lambda-выражений, которые позволяют писать компактный код для функциональных интерфейсов (интерфейсов с одним абстрактным методом).
В контексте типизации в Android (а точнее в Kotlin) использование типа с вопросительным знаком ? обозначает, что переменная может принимать значение null. Такой тип называется nullable (допускающий null).