Se você programa em Java ou Ruby on Rails, saia da sala, pois o assunto aqui é carne de vaca para vocês. Vamos falar do Design Pattern MVC e sua implementação .Net “ASP.NET MVC”.
O objetivo deste padrão de desenvolvimento é uma separação total das três camadas da aplicação, são elas:
Modelo, esta camada contem toda a parte de negócio, ou seja, programação pesada da aplicação, como acesso ao banco de dados, validação, fórmulas etc.
Controle, é responsável por receber uma requisição do usuário. Pode ser reutilizado para requisições com retorno em html, xml ou wml etc. de forma que a mesma requisição web serviria para todos, com o mesmo processamento e apenas o retorno diferente.
Visão, é a apresentação que será mostrada para o usuário ao término do processamento feito pelo controle e, se for o caso, pela camada de modelo.
Segue uma imagem para simplificar o entendimento:
Fluxo
O usuário faz uma chamada http para o controller, este nada mais é do que uma classe com um ou vários métodos. Por exemplo:
namespace Controllers
{
public class HomeController : Controller
{
[ControllerAction]
public void Index()
{
RenderView("Index");
}
}
}
Para este exemplo a chamada http seria a seguinte: http://meusite.com.br/Home/Index
Você deve estar se perguntando, mas esta pasta não existe, como posso usar esta url?
Simples. A página é virtual, não existe de verdade. Porém o MVC faz uma conversão da primeira pasta /Home/ para uma instanciação da classe Home e a pasta Index para uma chamada ao método Index e por aí vai.
Nosso método Index é muito simples, apenas manda carregar o arquivo de visão chamado Index.aspx, não é necessário informar a extensão do arquivo.
Porém, este método poderia chamar uma dll, webservices e outros componentes. Esses componentes executados pelo controle é a camada de modelo.
Bem, para não estender a conversa, que tal por a mão na massa? É muito fácil. Primeiramente, baixe o Visual Web Developer 2008 (é grátis) em http://www.microsoft.com/express/download/#webInstall. Em seguida, faça o download do nosso projeto exemplo em: http://daviwin.servicos.ws/mvc.zip
Depois de instalar o Visual Studio e baixar o projeto exemplo, abra o Visual Studio, clique em Open Web Site e selecione a pasta do projeto, já descompactado.
Para testar, basta apertar o F5. As urls para teste são: http://localhost:xxx/MVC/Home/Index e http://localhost:xxx/MVC/Home/Pagina2.
Também é possível usar o MVC na Locaweb, basta adicionar a extensão .ashx ao nome do controlador, por exemplo, sitedoze.com.br/Home.ashx/Index e sitedoze.com.br/Home.ashx/Pagina2.
Até a próxima!






