Please enable JavaScript.
Coggle requires JavaScript to display documents.
Flow / LiveData Use case - Coggle Diagram
Flow / LiveData Use case
For Android platform
Keep last value/state
last value/state saved & automatically
emit right after Android component is recreated
no lifecycle aware
StateFlow
lifecycle aware
LiveData
StateFlow with repeatOnLifecycle
Not keep last value/state
one-time event is emitted
SharedFlow
No require initial value/state
SharedFlow
LiveData
data stream as hot stream
data is state (always have a value)
StateFlow
data is event (only trigger if preconditions are fulfilled)
SharedFlow
Require initial value
StateFlow
Not require initial value
SharedFlow
Keep last value/state
StateFlow
Not keep last value/state
SharedFlow
Not emit same value/state again
StateFlow
Not care about value/state distintion
SharedFlow
data stream as cold steam
Flow
For any platform in Kotlin eco system
Not keep last value/state
SharedFlow
Require initial value/state
StateFlow
Architecture patterns
MVI/Redux/Flux
Hot flow
StateFlow
MVP
Cold flow
Flow
MVVM
Hot flow
SharedFlow