Este año he logrado conocer algunos frameworks MVC para Java
script. Al inicio luego de muchos años de conocer el potencial de ASP.net, me sentí
empezando en un mundo extraño donde la sintaxis del lenguaje era diferente,
donde varias cosas de las cuales estaba acostumbrado desaparecieron y
francamente me sentí como empezando de nuevo.
La aventura inicio con Backbone.js. Nunca había visto mis páginas
web cargar tan velozmente e interactuar con tanta fluidez. Lo mejor la reutilización
de código con n cantidad de vistas en una página fue una de las mejores cosas
que le vi. Además de la tener código tan estructurado en un lenguaje como
javascript donde estaba acostumbrado a hacer cosas como una librería .js con un
montón de funciones guardas en desorden y compartiendo variables en forma
desordenada. Además la documentación que
presta la página oficial creo que es suficiente para entender muchas de
las funciones. El contra lo único que puedo decir es que es un poco de
configurar y entender al inicio, pero uno aprende a crear java script de forma
ordenada y como debe de ser. Además de que necesita la ayuda de otras librerías
para tener un proyecto bastante fácil de usar.
Posteriormente, conocí Angular.js. Este es un framework con
mas documentación, mas estructurado, mas fácil de entender, se puede crear
cosas a la primera de forma muy fácil ya que es muy intuitivo y con cada versión
Google que es el dueño le incorpora mas funcionalidades al punto de que casi no
hay que agregar mas librerías al proyecto, Angular lo hace casi todo. Además como Google mantiene le proyecto hay
muy buena documentación. Actualmente creo que esta dentro del Boom de los
Frameworks MVC de JavaScript y va a ganar más terreno. Lo mejor de Angular son
las directivas, que trabajan modificando el DOM de esta forma puedes hacer
muchas cosas de una forma mas dinámica y con menos codigo.
Ahora cual es la ventaja de un framework MVC? Creo que la
mayor ventaja de esto es tener páginas web mas rápidas y robustas. En si el modelo
se conecta a un servicio en muchos de los casos RESTFull, el controller rápidamente
sabe cómo manejar los datos para hacer que estos persistan o para mostrarlos en
pantalla y la vista es un html que dinámicamente aparece en nuestra página web.
Las ventajas es que las paginas se ejecutan directamente en el navegador del
cliente y en el servidor solo exponemos servicios. Además, nos da la oportunidad
de colocar nuestro proyecto web en cualquier servidor http.
En sí, ya me olvide del page_load de ir y venir al server y
mostrar molestos postbacks refrescando la pagina, y de tener paginas
tediosamente lentas. Acá les dejo algunos links para que continúen su
aprendizaje en estos frameworks: