Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MVVM, MVP e outras letrinhas

MVVM, MVP e outras letrinhas

David Tiago Conceição

July 18, 2017
Tweet

More Decks by David Tiago Conceição

Other Decks in Programming

Transcript

  1. View • Interação com usuário • Interação com componentes externos

    • Diferentes implementações ◦ Activities ◦ Fragments ◦ Views ◦ …
  2. MVP • View passiva • Contratos entre Presenter e View

    • Abstração da View no Presenter
  3. MVP

  4. MVP

  5. MVP • Pontos fortes ◦ Simplicidade ◦ Fácil entendimento ◦

    Contratos ◦ Frameworks adicionais opcionais
  6. MVP • Pontos de atenção ◦ Heavy Presenters ◦ Heavy

    Views ◦ Heavy Contracts ◦ Light Contracts ◦ Android Architecture Components
  7. MVVM • Pontos fortes ◦ Componentes reativos ◦ Altamente flexível

    ◦ Nenhum contrato ◦ Data binding ◦ Android Architecture Components
  8. MVVM • Pontos de atenção ◦ Heavy ViewModels ◦ Frameworks

    adicionais quase obrigatórios ◦ Data binding ▪ ObservableFields públicos ▪ Custom binding adapters ◦ Maior complexidade ◦ Memória
  9. Pontos polêmicos • Android no Presenter/ViewModel ◦ Context ◦ View

    ◦ Testes • Life cycle • Salvando estado ◦ Presenter/ViewModel ◦ Model
  10. Para saber mais? • Android Architecture Blueprints • Android Testing

    Codelab • Android Architecture Components • Zen Android MVVM • Presenters are not for persisting • Your presenters don’t need all those lifecycle events