Scope задаёт контекст и жизненный цикл корутин: дочерние Job привязаны к родителю; отмена scope отменяет детей.
Разбор
- Android:
viewModelScope, lifecycleScope.
coroutineScope { } — структурированный блок, ждёт детей.
- GlobalScope почти всегда anti-pattern в приложениях.
- Scope = structured concurrency boundary.
Итог
Без scope корутины утекают за жизненный цикл UI.