Asp.Net MVC Pipeline

jueves, 29 de septiembre de 2011

Allá por Marzo del año pasado en lo que llamamos WebCrucijadas 2010hablamos un poco sobre Asp.Net MVC e intenté sintetizar el flujo de una aplicación Asp.Net MVC típica (en realidad es válido para casi cualquier framework web MVC).



Este diagrama (pseudo-diagrama de flujo) es una supersimplificación que sirve como material introductorio. Pero el motivo del post es compartir un diagrama (mucho más profesional :)) que twitteó @DanWahlin que muestra con detalle el pipeline de Asp.Net MVC (es decir, la parte izquierda del gráfico anterior).

El gráfico en PDF:
Asp.Net MVC Pipeline
y el artículo de Simone Chiaretta con una explicación muy buena de cada paso del flujo (en inglés):
An Introduction to ASP.NET MVC Extensibility

El artículo trata sobre la extensibilidad de la plataforma (que es destacable), de hecho el autor comienza afirmando "Si no estás extendiendo (Asp.Net MVC), no lo estás haciendo bien".
Sin embargo creo que conocer el pipeline es muy importante para arquitectos, programadores o cualquier otro perfil técnico.
De la misma forma que era vital entender el pipeline en WebForms para evitar darse la cabeza contra la pared, creo que es fundamental entender con cierta profundidad el pipeline de MVC para "moverse con soltura" en este nuevo framework.

En cuanto a la parte derecha del primer gráfico, afortunadamente se trata de un front-end html+css+js (¿todavía no existe un acrónimo ingenioso para este stack?) para el cual se aplican los mismos lineamientos de cualquier otra plataforma web moderna.

En un futuro, incluso podría tratarse de una aplicación "Metro" html+css+js (un acrónimo urgente!) nativa para Windows 8.