> Manuales > Manual del framework ASP.NET MVC

ASP.NET MVC es el “nuevo” framework que ha sacado Microsoft para desarrollar aplicaciones web, usando tecnología .NET.

Lo de nuevo entre comillas, viene porque la primera versión salió, aproximadamente, a mediados del 2009 y ya sabemos que en este mundo, casi dos años son una eternidad. De hecho, actualmente el framework ya va por su tercera versión y es esa tercera versión la que vamos a ver en esta serie de artículos.

ASP.NET MVC 3.0 permite el desarrollo de aplicaciones web usando .NET Framework 4.0 y Visual Studio 2010. No puede usarse Visual Studio 2008 aunque sí la versión Express (gratuita) de Visual Web Developer. ASP.NET MVC 3.0 no viene de serie, ni con Visual Studio 2010 ni con Visual Web Developer 2010. Puede instalarse usando Web Platform Installer o bien descargándolo desde http://www.microsoft.com/downloads/en/details.aspx?FamilyID=d2928bc1-f48c-4e95-a064-2a455a22c8f6&displaylang=en

¿Sustituye ASP.NET MVC a ASP.NET?

Esta es una de las primeras preguntas que se realiza mucha gente cuando oye a hablar por primera vez del Framework. La respuesta es un rotundo no, y por dos razones principales:
  1. ASP.NET MVC está construido usando ASP.NET. Todos los aspectos transversales de ASP.NET (autenticación, cache, sesión, roles,…) siguen siendo los mismos en ASP.NET MVC.
  2. Si a algo puede sustituir ASP.NET MVC es a Webforms, es decir a las páginas .aspx. Pero Microsoft ya ha anunciado que esto no sucederá: ambos frameworks (ASP.NET MVC y Webforms) se seguirán evolucionando. Así pues si has invertido tiempo en conocer y dominar Webforms, estate tranquilo: ese conocimiento sigue siendo válido. De todos modos yo te animo a que eches un vistazo a ASP.NET MVC y luego decidas cuál de los dos frameworks te gusta más para el desarrollo de aplicaciones web usando .NET.

El Patrón Modelo - Vista - Controlador (MVC)

ASP.NET MVC es, básicamente, una implementación del patrón Modelo - Vista - Controlador (MVC) para tecnología ASP.NET. El patrón MVC no es ni nuevo (data de finales de los años 70) ni está pensado para aplicaciones web, pero en realidad en aplicaciones web encaja perfectamente.

Brevemente podemos decir que el patrón MVC separa la lógica (y acceso a datos) de una aplicación de su presentación, usando 3 componentes:

  1. Modelo: Representa las reglas de negocio de la aplicación (y el acceso a datos subyacente).
  2. Vistas: Representan la presentación de la aplicación.
  3. Controlador: Actúan de intermediario entre el usuario y el Modelo y las Vistas. Recogen las peticiones del usuario, interaccionan con el modelo y deciden que vista es la que debe mostrar los datos.
En el contexto de ASP.NET MVC:

Ventajas de ASP.NET MVC

La ventaja que primero salta a la vista de ASP.NET es la facilidad con la que se generan URL semánticas, es decir URL que tengan la forma http://servidor/ver/productos/cafeteras en lugar de http://servidor/productos/ver.aspx?code=cafeteras. Las URLs semánticas se indexan mejor en los buscadores y son una práctica SEO habitual. No es que en webforms no se puedan hacer, es que en ASP.NET MVC vienen de serie.

Otras ventajas, más a nivel técnico, son que con ASP.NET MVC se facilita mucho el probar nuestra aplicación (especialmente usando pruebas unitarias) y que el uso correcto del patrón MVC facilita la reutilización de código de manera mucho más efectiva que en webforms.

Por supuesto, todo esto tiene un precio: la curva de aprendizaje de ASP.NET MVC puede ser más alta que la de webforms, especialmente si nunca has desarrollado para web. A diferencia de webforms, que te abstrae de HTTP y HTML, ASP.NET MVC está "mucho más cerca de la web", lo que hace necesario conocer HTTP, HTML y Javascript para trabajar con él. De todos modos eso no debería echarte para atrás: si quieres crear aplicaciones web es normal que debas conocer los protocolos y lenguajes en los que se asenta la web, ¿no?

A lo largo de esa serie de artículos, que vamos a publicar en el Manual de ASP.NET MVC, iremos viendo cómo desarrollar una aplicación ASP.NET MVC, usando la versión 3.0 del framework.

Eduard Tomàs

Apasionado de la informática, los videojuegos, rol y... la cerveza. Key Consulta...

Manual