Arquitetura MVC
- moraiscg
- 26 de mai. de 2010
- 2 min de leitura
A arquitetura MVC (Model-View-Controller) é uma forma de decomporuma aplicação em três partes: o modelo, a visão e o controlador. Vamos compreender o que significa cada uma das letras.
M (Model)
Esta parte representa os dados da aplicação e contem a lógica para acesso e modificação desses dados. Ela é quem fornece a capacidade de acessar as funcionalidades da aplicação (Insert, Update, Delete).
V (Views)
As Views servem para exibir as informações. São elas responsáveis para enviar ao controlador as ações do usuário. Assim, a View acessa os dados do modelo através do controlador (Controller) e determina como esses dados devem ser apresentados. Comparando com o modelo 3-tier (3 Camadas) essa seria a Interface.
C (Controller)
O controller define o comportamento da aplicação. O controlador é responsável por interceptar e traduzir a entrada do usuário (View) em ações a serem realizadaspelo modelo (Model). Assim, o controlador é responsável por selecionar as exibições com base na entrada do usuário e o resultado das operações do modelo.
O Controller seria a BLL do modelo 3-tier.
A imagem seguinte, idealizada por Thiago Lemos, mostra como são realizadas as requisições e os relacionamentos entre as partes.

As transições são descritas da seguinte forma:
1- O usuário solicita uma requisição de uma View (página web) ao Controller. Ex: Mostrar no formulário um dado.
2- O Controller recupera todas as informações da View e solicita uma ação (Select por exemplo) para o Model. O Model processa a ação (consulta um banco de dados) e devolve o resultado deste processamento para o Controller.
3- O Controller processa o resultado e devolve para View o que ela deve exibir.
4- A View recebe o que foi processado pelo Controller e exibe o resultado para o usuário. (Entenda a View como a página exibida)
Resumindo, o modelo MVC é utilizado com muita frequência em aplicações para Web. Aqui a View representa a página HTML, o controller gera os dados dinâmicos para dentro da View (HTML) e o Model é representado pela manutenção dos dados, ou seja, armazenagem em BD ou outros tipos de arquivos


Comentários