Operation Flow
summary
Covers concrete operator behavior (buffer, debounce, flatMapLatest, combine, zip), explains when to use take versus first, and distinguishes hot versus cold flows with practical semantics. Demonstrates testing hot flows with Turbine, and notes KMP support for sharing Kotlin Flows. Shows a runnable example project Rion and compares SharedFlow and StateFlow including eager versus replay behavior, emit versus tryEmit, and gotchas around exceptions, cancellation, and resource cleanup.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 1:26What is a Flow
- 3:16Coupling coroutines and Flow
- 5:06Flow creators and builders
- 8:03Intermediate flow operators
- 10:29Distinct, buffer, debounce
- 14:07onStart, onEach, onEmpty
- 17:59Exception handling with catch
- 20:08Context switching with flowOn
- 20:49Transform and zip operators
- 24:01FlatMap operators differences
- 27:13Reduce and scan operators
- 29:07Terminal operators
- 32:18Cold vs hot flows
- 34:07SharedFlow and StateFlow
- 37:21Testing flows
- 38:50Q&A








