O objetivo desta semana é compreender conceitos importantes de estruturação de software, aplicados ao contexto Android, e em particular observar um exemplo de padrão arquitetural MVVM.
Ao fim da semana, você deve ser capaz de responder às seguintes perguntas:
- Quais são as razões para se importar com arquitetura de software em aplicações móveis?
- Quais padrões arquiteturais costumam ser usados em aplicações Android?
- Clean Architecture Tutorial for Android: Getting Started
- MVVM Architecture - Android Tutorial for Beginners - Step by Step Guide
-
S.O.L.I.D. Principles
-
Arquitetura
- Arquiteturas em Android : MVVM + Kotlin + Android Architecture Components (Databinding, Lifecycle, LiveData, Room)
- MVP vs MVVM: principais diferenças, vantagens e desvantagens
- Android: MVP vs MVVM Key differences
- Android Architecture Comparison: MVP vs MVVM
- MVC vs MVP vs MVVM architecture in Android
- Why to choose MVVM over MVP — Android Architecture
- Common Mistakes in Android Architecture
- Architecture Diagrams for Android Applications
-
Vídeos
- Build a Modular Android App Architecture (Google I/O'19)
- Modularizing Android Applications - Marvin Ramin
- Introduction to MVVM on Android - Tutorial - Learn Android Architecture Patterns
- Android MVVM Kotlin Tutorial - LiveData + ViewModel (Android Architecture Components)
- Architecture Components: MVVM for Android - Артур Василов | DevFest Siberia 2017
- MVC, MVP, MVVM Design Patterns with Godfrey Nolan
-
Podcasts
- Fragmented podcast 011: The Fowler Road to a Clean Architecture
- Fragmented podcast 103: MVI pattern with Hannes Mosby Dorfmann
- Fragmented podcast 148: Evolving Android architectures (Part 1)
- Fragmented podcast 151: Evolving Android architectures (Part 2)
- Fragmented podcast 173: What Pattern Should I Use – MVP, MVVM, MVI …?
- Android App Architecture with Vijay Sharma – Podcast S10 E10