Definición ASP.NET MVC

Hola,

Tengo la intención de subir algunos post sobre el nuevo framework de Microsoft ASP.NET MVC y mientras practicaba con algunos laboratorios me he dado cuenta que necesitaba escribir cuatro líneas sobre qué es asp.net mvc y detallar algunas ventajas.

Actualmente está en versión Release Candidate y la podemos descargar directamente desde el blog de Scott Guthrie.

No es la tecnología que sustituye a asp.net sino que se debe tomar como una opción para desarrollar aplicaciones web. Soy de la opinión que asp.net es una tecnología muy buena pero en ocasiones complicada para hacer cosas que deberían ser muy sencillas. A mínimo que nos moleste el Viewstate por temas de rendimiento nuestra aplicación se puede volver un infierno de postbacks pero bueno, este tema se merece algún otro post.

¿Qué es ASP.NET MVC?

ASP.NET MVC es la implementación de Microsoft del patrón de desarrollo MVC (Model-View-Controller). Este patrón se basa en  separar en 3 capas los datos,  la lógica de control y la presentación.

  1. Model: Componentes que se encargan de mantener el estado; Normalmente en base de datos. Estos componentes pueden ser entidades, lógica de acceso a datos o lógica de negocio.
  2. View: Encargada de presentar la información. Una vista pueden ser un aspx o .ascx.
  3. Controller: Gestiona las peticiones o acciones del usuario.

Los pasos de ejecución serían: El usuario entra en una URL que es “enroutada” hacia un controlador determinado. El controlador forma un modelo a partir de la acción seleccionada. Para finalizar, el modelo es enviado a la vista correspondiente para ser presentada al usuario transformando el modelo recibido al formato necesario (html, rss, informes, etc.)

Las principales ventajas que encuentro en el modelo MVC son:

  1. Separar entidades de estado, de la lógica de negocio o de acciones y el formato de la presentación.
  2. Como resultado del punto 1, mas potencia de Unit Testing sobre la aplicación, incluido tests sobre los controladores.
  3. El sistema funciona por enrutamiento de urls hacia controladores. Se “pierde” el ciclo de vida de página de asp.net y postbacks (🙂 ).
  4. El sistema de Routing permite tener URLs limpias. Un ejemplo sería “/Personas/VerDetalle/65” para gestionar la acción de ver la persona con id 65.

Dentro de poco iré subiendo código fuente basado en este modelo y espero que vaya desde el ya típico “Hello World” a alguna aplicación de gestión de datos… pero hasta entonces sólo dejo una imagen de lo que vendrá…modelos, vistas y controladores.

image

Saludos, Garrin.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: