¡GoConqr estrena diseño! Cuéntanos qué te parece.

Mapa mental

MVVM (Model-View-ViewModel)

James Saboia Jr Portugués

Contenido del mapa

MVVM (Model-View-ViewModel)

  1. 1) VIEW

    • - CAMADA RESPONSÁVEL POR TODA LÓGICA REFERENTE AOS COMPONENTES VISUAIS; - O OBJETIVO DESTA CAMADA É INFORMAR A  CAMADA VIEWMODEL SOBRE A AÇÃO DO USUARIO;  - CONHECE / SE RELACIONA COM A CAMADA VIEWMODEL ATRAVES DE UM BINDING; - NÃO CONHECE A CAMADA MODEL, OU SEJA, NÃO SE RELACIONA COM ELA.    
    • ACTIVITY/FRAGMENT
      • TEXTVIEW, IMAGEVIEW, RECYCLERVIEW, CUSTOMVIEW, ETC...
  2. 2) VIEW MODEL

    • - CAMADA RESPONSAVEL PELA LOGICA DE EXIBIÇÃO DAS INFORMAÇÕES , OU SEJA, SEU OBJETIVO É ARMAZENAR E GERENCIAR DADOS RELACIONADOS A UI;  - ATUALIZA A CAMADA VIEW POR MEIO DE UMA NOTIFICAÇÃO FEITA NO MUTABLE LIVE DATA;   - TRABALHA EM CONJUNTO COM A CAMADA MODEL PARA OBTER E SALVAR DADOS; - É RESPONSAVEL POR FAZER A COMUNICAÇÃO ENTRE AS CAMADAS MODEL E VIEW ATRAVES DO LIVEDATA. OU SEJA, É A CAMADA RESPONSÁVEL POR FAZER UMA PONTE ENTRE A CAMADA VIEW E MODEL ATRÁVES DO LIVEDATA, ASSIM FAZENDO COM QUE ELAS NÃO SE RELACIONEM DE MANIERA DIRETA; - ELA EXPOE OS FLUXOS DE DADOS QUE SÃO RELEVANTES PARA A CAMADA VIEW, ALEM DE FUNCIONAR COMO UM ELO ENTRE A CAMADA MODEL E A CAMADA VIEW, DE MODO QUE AMBAS NÃO SE RELACIONEM DIRETAMENTE.
    • MUTABLE LIVE DATA
      • O MUTABLE LIVE DATA É O RESPONSÁVEL POR E OBSERVAR E ESPERAR A CHAMADA/CONSULTA AO BACKEND QUE SERÁ FEITA LA NO REPOSITORY E, EM SEGUIDA, VIR PRA CA.  COMO ELE É MUTÁVEL, SEU PAPEL É FICAR ESPERANDO ATE VIR ALGUM DADO NOVO, E QUANDO VIER, ELE VAI AGIR E CAPTURA-LO.  EM SEGUIDA ELE VAI ARMAZENAR ESSE DADO NOVO NUMA LISTA. POR FIM, ELE ENVIA ESSA LISTA (AGORA ATUALIZADA)  PARA A CAMADA DE -VIEW- PARA QUE SEJA EXIBIDA NA TELA EM UMA RECYCLERVIEW, POR EXEMPLO.
    • LIVE DATA
  3. 3) MODEL

    • - CAMADA MODEL: É FORMADA POLAS SUB-CAMADAS REPOSITORY E DATA SOURCE (QUE PODE SER LOCAL OU REMOTO) - NÃO CONHECE A CAMADA VIEW, OU SEJA, NÃO SE RELACIONA COM ELA;   - CAMADA RESPONSÁVEL POR TODA LOGICA REFERENTE A REGRA DE NEGOGIO;      - TRABALHA EM CONJUNTO COM A CAMADA VIEWMODEL PARA OBTER E SALVAR DADOS;   
    • REPOSITORY
      • SEU OBJETIVO É FAZER UMA PONTE PARA O DATA SOURCE (BANCO DE DADOS, LOCAL OU REMOTO). É AQUI DENTRO QUE É FEITO A UNIÃO ENTRE A INTERFACE DA API (QUE CONTEM A ROTA URL DO LINK DA API) E A REST API TASK (QUE CONTEM A URL BASE DO LINK DA API) E, COM ESSA UNIÃO, ACONTECE A REQUISIÇÃO DE DADOS DO WEBSERVICE (BANCO REMOTO) 
      • DATA SOURCE
        • ESSA SUB-CAMADA É ONDE SE ENCONTRA NOSSA FONTE DE DADOS (BANCO DE DADOS), QUE PODEM SER LOCAIS OU REMOTAS.
        • MODEL - ROOM (CASO FOR BANCO LOCAL)
          • SQLITE - BANCO DE DADOS LOCAL
        • REMOVE DATA SOURCE - RETROFIT
          • API
            • SUB-CAMADA! AQUI COMEÇAREMOS A TRABALHAR COM O RETROFIT
            • INTERFACE
              • RESPONSÁVEL POR ARMAZENAR A ROTA DO LINK DA NOSSA API DE CONSULTA QUE PODE SER ACESSADA USANDO UM @GET E QUE RETORNA A NOSSA LISTA DE DADOS.
            • REST API TASK
              • RESPONSÁVEL POR ARMAZENAR  A URL BASE DO LINK DA NOSSA API DE CONSULTA E TRADUZI-LA (VIA CONVERTER FACTORY) TODOS OS DADOS EM JSON QUE ESTAO ESCRITOS LA, PARA QUE ASSIM, A MAQUINA CONSIGA ENTENDER.
            • WEBSERVICE - BANCO DE DADOS REMOTO

Información

Descripción
Mapa Mental sobre MVVM (Model-View-ViewModel), creado por James Saboia Jr el 21/04/2022.
Creado por
James Saboia Jr · abr 2022
Actualizado
31 ago 2022
Visitas
1
Valoración

Más sobre Padrões MVC e MVVM

Escríbenos

¿Sobre qué es tu mensaje?

¿Qué te parece el nuevo diseño?

¿Te gusta?