quarta-feira, 10 de março de 2010

MVC – Models, Views e Controllers

O Rails utiliza uma estratégia de desenvolvimento chamada de MVC (Model-View-
Controller). Essa estratégia separa os componentes da aplicação em 3 partes
distintas:
Model

O Model é a parte da aplicação que faz ligação como o banco de dados.
Tecnicamente, o model é implementado pela classe ActiveRecord.

View

O View é a interface com o usuário – um sistema de template que gera
documentos HTML (entre outros) que são enviados para o usuário. As classes
conhecidas como ActionPack, implementam o View e também o Controller.

Controller

Um controller é uma classe responsável por receber as requisições feitas pela
aplicação e executar as ações necessárias para atender essas requisições. É no
controller que definimos a lógica do funcionamento da nossa aplicação.
O controller é quem será efetivamente solicitado pelo navegador. Quando
necessário, o controller utiliza um Model previamente definido para acessar o
banco de dados e, finalmente, encaminha um arquivo de visualização (uma View)
para o usuário.

Apesar de parecer complicado e trabalhoso demais à primeira vista, este modo de
trabalhar traz uma série de vantagens em relação ao modelo tradicional de
desenvolvimento em que uma única página mistura códigos responsáveis pelo seu
funcionamento, pelo acesso ao banco de dados e por exibir dados ao usuário.
Algumas vantagens são:

• A manutenção fica mais fácil por haver uma clara distinção entre as partes da
aplicação

• É possível manter um controle centralizado de todo o site num único (ou em
poucos) arquivo, ao invés de espalhado em dezenas deles.

Nenhum comentário: