— Вопросы по Android:
1. Назови основные компоненты Android-приложения (Activity, Service, BroadcastReceiver, ContentProvider) и объясни, почему они являются точками входа в приложение.
2. Перечисли основные методы жизненного цикла Activity.
3. Какие существуют способы сохранения состояния в Android?.
4. Какие типы данных можно помещать в Intent?.
5. Объясни разницу между интерфейсами Serializable и Parcelable. Почему в Android предпочтительнее использовать Parcelable?.ать Parcelable?.
— Вопросы по Kotlin/Java:
1. Перечисли основные методы класса Any.
2. Назови модификаторы доступа для элементов класса в Kotlin.
3. Какие коллекции в Kotlin тебе известны?.
4. Чем Map отличается от других коллекций (List, Set)?.
5. Приведи примеры реализаций коллекций (ArrayList, LinkedList, HashMap, HashSet).ap, HashSet`).
— Вопросы по синхронизации:
1. Какие способы синхронизации доступа к переменной в многопоточной среде тебе известны?. 2. Расскажи об особенностях использования ключевого слова volatile. 3. Что может произойти с программой, если не синхронизировать доступ к общей переменной из разных потоков? Могут ли возникнуть критические ситуации, такие как deadlock?.k`?.
— Вопросы по работе с сетью:
1. Опиши, какие шаги необходимо предпринять, чтобы выполнить сетевой запрос в новом Android-проекте. 2. Какие особенности нужно учитывать со стороны Android при работе с сетью?. 3. Почему не рекомендуется выполнять сетевые запросы напрямую в Activity на главном потоке (main thread)?.`)?.
— Вопросы по UI:
1. Для чего используется RecyclerView? Почему его применение предпочтительнее ListView?. 2. Какие оптимизации и сильные стороны RecyclerView ты можешь назвать (например, использование пула для переиспользования View, ItemAnimator, ItemDecorator и т.д.)?. 3. Как RecyclerView работает с большими списками данных? Рендерит ли он сразу все элементы?.все элементы?.
— Задача: Написать функцию, которая принимает на вход массив чисел (Int) и возвращает boolean, если в массиве есть два подряд идущих одинаковых элемента.нта.
fun function(list: List): Boolean {
}