Una revisión o comentario acerca del desarrollo de aplicaciones web

El desarrollo de web applications apunta al desarrollo de interfaces de usuario, lo hemos visto cada vez más. Actualmente, el enfoque es el browser. Sería una muy buena decisión empezar a crear nuestro perfil como frontend developer y divertirnos con las grandes librerías y frameworks como Backbone.js, Angular.js, Ember.js, Knockout.js, Batman.js y muchas otras herramientas que emergen de pronto, como siempre.

Hace tiempo cuando comencé a instruirme en Node.js, me parecía fantástico lo que podías hacer de manera muy rápida y las ventajas que tenías en términos de rendimiento y velocidad de procesamiento. Recuerdo que lo que más me costó fue comprender la forma de CommonJS para trabajar con módulos y para organizar una aplicación, además de comprender el blocking y el non-blocking con la ejecución de callbacks. Después, Connect.js vino a hacerlo más bonito, y con Express.js todo se lleno de amor. Al final, sería muy desafortunado no usar algúntemplate engine como Jade y un compilador de hojas de estilos como Stylus o LESS. Los template engines más bonitos fueron los basados en Mustache, como Hogan, Handlebars, etcétera.

¿Ahora? Parece que cada vez es menos necesario utilizar algún template engine del lado del servidor, en algún momento tampoco será necesario pensar en las routes de tu aplicación, porque ahora todo el mundo quiere ser asíncrono. Todo lo que tenga que ver con interacción con el usuario tiene que ver con el desarrollo del lado del cliente, al servidor sólo dale opción a crear, leer, editar y eliminar datos. Por eso lo único que necesitas es una REST API y parece que el desarrollo de web apps apunta hacia eso, olvídate si lo haces en Node.js, Ruby, Python, PHP. Finalmente, todo lo que tienes es el desarrollo de librerías y frameworks de Javascript del lado del cliente que son cada vez más complejos y que ayudan a generar interfaces muy complejas.

Debo decir que, por lo demás, esto es muy sintomático. Cada vez se acentúa más la época de interfaces, interfaces que se conectan con otras interfaces: interfaces como UI (user interfaces), interfaces como middlewares, interfaces como API’s, etcétera. Pero, bueno, creo que con esto me he salido un poco del tema.

Leave a Comment

Your email address will not be published. Required fields are marked *