Introdução a ASP.NET MVC

ASP.NET MVC é o novo framework que lançado a Microsoft para desenvolver aplicações web, usando tecnologia .NET.

Por Eduard Tomás - Tradução CRV


Publicado em: 12/7/11
Valorize este artigo:
O de novo entre aspas, é porque a primeira versão saiu, aproximadamente, a meados de 2009 e já sabemos que neste mundo, quase dois anos são uma eternidade. Na verdade, atualmente o framework já está na sua terceira versão e é essa terceira versão a que vamos ver nesta serie de artigos.

ASP.NET MVC 3.0 permite o desenvolvimento de aplicações web usando .NET Framework 4.0 e Visual Studio 2010. Não se pode usar Visual Studio 2008 a não ser que a versão Express (gratuita) de Visual Web Developer. ASP.NET MVC 3.0 não venha de série, nem com Visual Studio 2010 nem com Visual Web Developer 2010. Pode-se instalar usando Web Platform Installer ou então baixando de http://www.microsoft.com/downloads/en/details.aspx?FamilyID=d2928bc1-f48c-4e95-a064-2a455a22c8f6&displaylang=en

ASP.NET MVC substitui ASP.NET?

Esta é uma das primeiras perguntas que muita gente se faz quando escuta falar por primeira vez do Framework. A resposta é um categórico não, e por duas razões principais:
  1. ASP.NET MVC está construído usando ASP.NET. Todos os aspectos transversais de ASP.NET (autenticação, cache, sessão, roles,…) continuam sendo os mesmos em ASP.NET MVC.
  2. Se ASP.NET MVC pode substituir algo é a Webforms, ou seja as páginas .aspx. Porém, Microsoft já anunciou que isto não acontecerá: ambos frameworks (ASP.NET MVC e Webforms) continuarão evoluindo. Assim, se você investiu tempo em conhecer e dominar Webforms, fique tranquilo: esse conhecimento segue sendo válido. De qualquer forma, eu o incentivo a dar uma olhada em ASP.NET MVC e depois decidir qual dos dois frameworks mais lhe agrada para o desenvolvimento de aplicações web usando .NET.

O Padrão Modelo - Exibição - Controlador (MVC)

ASP.NET MVC é , basicamente, uma implementação do padrão Modelo - Exibição - Controlador (MVC) para tecnologia ASP.NET. O padrão MVC não é nem novo (data de finais dos anos 70) nem está pensado para aplicações web, mas na realidade em aplicações web se encaixa perfeitamente.

Brevemente podemos dizer que o padrão MVC separa a lógica (e acesso a dados) de uma aplicação de sua apresentação, usando 3 componentes:

  1. Modelo: Representa as regras de negócio da aplicação (e o acesso a dados subjacente).
  2. Exibições: Representam a apresentação da aplicação.
  3. Controlador: Atuam de intermediário entre o usuário e o Modelo e as Exibições. Recolhem as solicitações do usuário, interatuam com o modelo e decidem que exibição deve mostrar os dados.
No contexto de ASP.NET MVC:
  • Toda a lógica de negócio e o acesso a dados é o Modelo (em muitos casos o Modelo pode estar em um ou vários assemblies referenciados).
  • As exibições contém, basicamente, o código que é enviado ao navegador, ou seja o código HTML (e código de servidor associado, desde que este código faça coisas de apresentação, não de lógica de negócio).
  • Os controladores recebem as solicitações do navegador e com base nelas, decidem que exibição deve ser enviada de volta ao navegador e com que dados.

Vantagens de ASP.NET MVC

A primeira vantagem de ASP.NET que salta à vista é a facilidade com que são geradas URL semânticas, ou seja URL que tenham a forma http://servidor/ver/produtos/cafeteiras em lugar de http://servidor/produtos/ver.aspx?code=cafeteiras. As URLs semânticas se indexam melhor nos buscadores e são uma prática SEO habitual. Não é que em webforms não se possam fazer, é que em ASP.NET MVC vêm de série.

Outras vantagens, mais a nível técnico, são que com ASP.NET MVC se facilita muito testar nossa aplicação (especialmente usando testes unitários) e que o uso correto do padrão MVC facilita a reutilização de código de maneira muito mais efetiva que em webforms.

É claro, tudo isto tem um preço: a curva de aprendizagem de ASP.NET MVC pode ser mais alta que a de webforms, especialmente se você nunca desenvolveu para web. Diferentemente de webforms, que te abstrai de HTTP e HTML, ASP.NET MVC está "muito mais próxima da web", o que torna necessário conhecer HTTP, HTML e Javascript para trabalhar com ele. De qualquer modo, isso não deveria colocar você para baixo: se você quer criar aplicações web é normal que deva conhecer os protocolos e as linguagens nos que se assenta a web, não?

Ao longo dessa série de artigos, que vamos publicar no Manual de ASP.NET MVC, iremos vendo como desenvolver uma aplicação ASP.NET MVC, usando a versão 3.0 do framework.






Usuários :    login / registro

Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato