Os apps Android se beneficiam de padrões de arquitetura que separam responsabilidades e melhoram a manutenibilidade e testabilidade — notavelmente MVVM (Model-View-ViewModel, recomendação do Google), MVI (Model-View-Intent) e Clean Architecture. Compreendê-los é importante para construir apps bem estruturados.
MVVM — Model-View-ViewModel (recomendado)
MVVM separates the UI from logic and data:
VIEW (Activity/Fragment/Compose) → displays UI, observes the ViewModel, forwards events
VIEWMODEL → holds UI state + logic; exposes observable state (LiveData/StateFlow);
survives config changes; NO Android framework/UI dependencies (testable)
MODEL → data (repositories, data sources)
→ The View observes the ViewModel's state and updates reactively. Google's recommended
pattern (using Architecture Components).
