1 Arquitetura MVC
• Definição: Arquitetura que faz uso de apenas duas camadas que, formalizadas, podem ser citadas:
– View (Visualização): camada que contém componentes de interface como botões, listas, etc e que se comunicam com o
Banco de Dados para que sejam persistidas as informações preenchidas e visualizadas.
– Model (Modelo): camada não implementada mas que está presente no modelo a título de formalização. Representa o
Banco de Dados e aguarda por requisições da View para realizar inserções, remoções, retornar registros, etc.
Arquitetura Usual
Arquitetura MVC
• Definição: Model View Controller é a arquitetura que faz uso de três camadas de aplicação;
– Model (Modelo): utilizada para controle das regras de negócio, como por exemplo:
• Só pode haver uma Entidade A presente na aplicação caso uma
Entidade B esteja relacionada com uma Entidade C representando uma relação D.
– Model também fica responsável por persistir as entidades no Banco de Dados, como por exemplo:
• De acordo com uma Variável A, buscar n variáveis no Banco que se relacionem com A.
Arquitetura MVC
• Definição (continuação):
– Controller (Controle): utilizada para que se haja comunicação entre a camada de View do Usuário com a camada de Modelo do Servidor, por exemplo:
• Caso o Usuário A tenha permissão para visualizar as informações da
Entidade B, buscar no Modelo a Entidade B e seus atributos.
– View (Visualização) camada apresentável para o usuário contendo componentes como listas, botões, menus, etc.
Utiliza a camada de Controle para se comunicar com o
Modelo.
Arquitetura MVC
Vantagens • Mul,ple views for a model •
•
•
•
•
•
•
•
Mul,-‐view applica,ons (overview+detail) Different users Different UI pla?orms (mobile, client-‐side, server-‐side,…) Alternate designs
Mul,ple models SoEware re-‐use of parts Plug-‐n-‐play Maintenance
Exercício • Exemplificar