На странице собраны вопросы по Kotlin — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: android, mobile, async.
корутина — легковесная единица выполнения, которой управляет CoroutineScope запуск с помощью launch — возвращает Job и подходит для задач, которым не нужен результат запуск посредством async — возвращает Deferred и…
Варианты сохранения состояния Activity жизненный цикл Activity — основа понимания механизмов сохранения onSaveInstanceState(Bundle) — запись краткоживущих данных в Bundle onRestoreInstanceState(Bundle) и…
Основные способы синхронизации переменной область: многопоточность, конкурентный доступ мьютексы (mutex): блокируют доступ и предотвращают гонки семафоры: задают предельное число одновременных обращений атомарные…
Отличия <? extends T> от <? super T> обобщённые типы в Java значения из такого контейнера можно безопасно читать, но добавление запрещено объекты типа T можно безопасно добавлять, а при чтении типом результата будет…
Flow и LiveData: различия и перенос логики Flow — асинхронный реактивный поток из Kotlin Coroutines, который поддерживает операторы преобразования и не привязан к UI LiveData — компонент Android Jetpack с поддержкой…
при продолжительной работе чаще всего возникают исключения, обусловленные исчерпанием памяти или тайм-аутами, которые вызывают утечки ресурсов и падение производительности.
Выбор Dispatcher для UI и фоновых операций в Flow Для UI используется Dispatcher.Main — он выполняет код в главном потоке, где расположены элементы интерфейса, поэтому необходим для работы с UI.
Получение атрибута PrimaryColor через ApplicationContext и ActivityContext Контексты Android: ApplicationContext является глобальным, а ActivityContext относится к конкретному UI-экрану ApplicationContext не позволяет…
В каких случаях использовать WorkManager, а в каких — Service? WorkManager выбирают для отложенных и гарантированно выполняемых задач, которые должны завершиться даже после перезагрузки устройства WorkManager умеет…
Когда в Kotlin выбирать data class, а когда обычный класс? data class предназначен для хранения данных и автоматически получает equals(), hashCode(), toString(), copy() и компоненты Его выбирают, если важны…
Когда выбирать Int32 или Int64? (различия целочисленных типов в языках программирования) Тип Int обычно обозначает целое число фиксированного размера, например Int32 или Int64. Определяющими факторами служат…