Android & Build System
1. Для чего разбивают Android проект на модули
2. Разница между implementation и api в gradle
3. Разница между SubComponent или Component Dependency
4. Что лучше MVVM или MVI
Kotlin Data Classes
5. Для чего нужен data класс
6. Что будет, если определить переменную не внутри первичного конструктора data класса, а внутри класса
7. Что будет, если поля в конструкторе data класса определить не как val, а как var, что может произойти (вопрос с ссылкой на hash коллекции)
8. Как сделать data класс, переменная которого является списком, неизменяемым полностью (использовать композицию)
Kotlin Advanced Features
9. Разница композиции и наследования
10. inline функция
11.…