¿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
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