MVI (Model-View-Intent) dùng luồng dữ liệu một chiều như Flux hay Redux.
- View gửi intent (hành động người dùng) lên ViewModel, ViewModel xử lý và emit ViewState mới để cập nhật View.
- Khác với MVVM nơi ViewModel có thể expose nhiều StateFlow, MVI dùng một state object duy nhất được cập nhật theo một hướng.
- Có thể đoán trước hơn nhưng cần nhiều boilerplate hơn.
MVI (Model-View-Intent) uses unidirectional data flow like Flux or Redux.
- The View sends intents (user actions) to the ViewModel, which processes them and emits new ViewStates updating the View.
- Unlike MVVM where ViewModels expose multiple StateFlows, MVI uses a single state object updated in one direction.
- It's more predictable but requires more boilerplate.