Какие у тебя есть вопросы по корутинам

«Какие у тебя есть вопросы по корутинам» — вопрос из категории Coroutines и Flow, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Как вы используете корутины в проекте?
Помогает понять, насколько глубоко команда погружена в тему (например, Flow, кастомные диспетчеры).

Какие проблемы с отменой/утечками корутин встречались?
Показывает, сталкивались ли с SupervisorJob, coroutineScope vs supervisorScope, отменой через Job.

Как тестируете корутины?
Ожидаю TestCoroutineDispatcher, runBlockingTest (или аналог в kotlinx-coroutines-test).

Почему выбрали корутины, а не RxJava?
Важно для понимания архитектурных решений (легковесность, упрощение кода).

Как обрабатываете ошибки в корутинах?
Проверяю знание try/catch, CoroutineExceptionHandler, supervisorScope.

Пример:

viewModelScope.launch(CoroutineExceptionHandler { _, e -> 
    // Handle error 
}) { 
    fetchData() 
}