martes, 29 de julio de 2014

¿Por qué ASP.NET MVC en vez del viejo y conocido ASP.NET Web Forms?

ASP.NET Web Forms es simple: si quiero hacer una funcionalidad de búsqueda en mi página, arrastro un cuadro de texto, un botón, y programo el evento click de este último con la lógica de la búsqueda. El proceso es prácticamente idéntico a lo que se haría en una aplicación de escritorio, en donde los eventos gobiernan el comportamiento de la aplicación.

Y ése, es precisamente el problema. En realidad cuando desarrollamos aplicaciones web no deberíamos pensar en términos de páginas, eventos y botones, por la sencilla razón de que la web no funciona así. La Web funciona en términos del protocolo HTTP y sus comandos, como GET y POST. La presentación se obtiene mediante HTML y CSS. El documento HTML se manipula con JavaScript. De hecho en realidad no hay páginas, ya que una URL es básicamente un puntero a un recurso que no necesariamente debe estar mapeado a un archivo físico (.html o .aspx) en el servidor.

Por esa razón, ASP.NET Web Forms debía hacer mucho trabajo detrás de escena para lograr que la aplicación orientada a eventos que nosotros escribimos desde Visual Studio se convirtiera en una aplicación HTTP real. Básicamente Web Forms genera por nosotros el código HTML y JavaScript respectivo, lo que implica que realmente nunca tenemos el control real sobre el código que ejecutará el navegador.

En ese sentido, MVC nos permite volver a lo básico. Mediante este modelo podremos desarrollar aplicaciones Web que funcionen como realmente opera la Web, haciendo uso de HTTP y sus comandos, y separando la lógica de la presentación. Podremos incorporar con mayor facilidad tecnologías como jQuery, HTML5 o CSS3 a nuestros sitios y lo más importante, tendremos absoluto control sobre el código HTML y JavaScript que será entregado al navegador.


Esta es la primera de varias entradas que buscan ayudarle a los desarrolladores a nivelar sus conocimientos en Web Forms y MVC, y hacer que la transición entre las dos tecnologías sea lo más simple posible.

Autor: Hugo Fernando Aristizabal - Consultor & Arquitecto de Software


1 comentario:

  1. El conocimiento es generado por la practica real en casos reales, solo así se puede adquirir la destreza en este modelo. Esperamos con mucha expectativa los cursos prácticos y futuros proyectos.

    ResponderEliminar