segunda-feira, 11 de agosto de 2014

O que é MVC?

MVC (Model-View-Controller) é um padrão de projeto arquitetural criado com o objetivo de separar a lógica de negócios da camada de apresentação.

Porque utilizar o MVC?
Com o aumento da complexidade das aplicações desenvolvidas, sempre visando a programação orientada a objeto, torna-se relevante a separação entre os dados e a apresentação das aplicações. Desta forma, alterações feitas no layout não afetam a manipulação de dados, e estes poderão ser reorganizados sem alterar o layout.
Esse padrão resolve este problema através da separação das tarefas de acesso aos dados e lógica de negócio, lógica de apresentação e de interação com o utilizador, introduzindo um componente entre os dois: o controlador.
Como funciona?
 O MVC guia o desenvolvedor na tentativa de organizar a aplicação de forma que tenhamos três papéis bem definidos, onde o MODEL (modelo) é responsável por todo o processamento da aplicação (regras de negócio e acesso ao banco de dados), o VIEW (visão) serve apenas para apresentação de resultados como também entrada de informações e o CONTROLLER (controlador) faz a comunicação entre o MODEL e o VIEW.

MODEL, VIEW e CONTROLLER

Além de dividir a aplicação em três tipos de componentes, o desenho MVC define as interações entre eles.
  • Um controller (controlador) pode enviar comandos para sua visão associada para alterar a apresentação da visão do modelo (por exemplo, percorrendo um documento). Ele também pode enviar comandos para o modelo para atualizar o estado do modelo (por exemplo, editando um documento).
  • Um model (modelo) notifica suas visões e controladores associados quando há uma mudança em seu estado. Esta notificação permite que as visões produzam saídas atualizadas e que os controladores alterem o conjunto de comandos disponíveis. Uma implementação passiva do MVC monta estas notificações, devido a aplicação não necessitar delas ou a plataforma de software não suportá-las.
  • view (visão) solicita do modelo a informação que ela necessita para gerar uma representação de saída.

E assim esses três formam o padrão arquitetural chamado de MVC, ou Model View Controller. Lembrando que ele pode sofrer variações de diversas maneiras. E o que o MVC garante é a separação de tarefas, facilitando assim a reescrita de alguma parte, e a manutenção do código.

Nenhum comentário:

Postar um comentário