Використання Kotlin Flow для ефективного завантаження та кешування даних. Розглядаємо особливості різних варіантів та можливі ситуації, такі як помилки, повторне завантаження, кешування і т.д.
Тайм-коди:
- 00:00 – Вступ
- 02:48 – suspend-функції
- 06:31 – Kotlin Result & runCatching
- 11:05 – Кастомний тип (a.k.a. Response / Container)
- 13:29 – Найпростіший Flow: flow-білдер
- 19:15 – Flow + Container
- 24:46 – Оператор stateIn + WhileSubscribed + впровадження CoroutineScope
- 33:56 – Використання flatMapLatest: тригери на завантаження даних
- 42:23 – PullToRefresh: тригер на завантаження даних з додатковими аргументами
- 49:34 – LazyFlowSubject
- 56:25 – Висновки
Код проекту тут (silver) і тут (gold).