Vue.js: Qué es y por qué usarlo como framework de referencia

El mundo del desarrollo web ha cambiado mucho en la última década y, por supuesto, la experiencia de uso de las aplicaciones, que hoy son mucho más dinámicas, rápidas e interactivas. Para conseguirlo, muchas de las funcionalidades que antes se desarrollaban con código del lado del servidor, lo que se conoce como «backend», se han llevado a código del lado del cliente con Javascript, llamado «frontend».

Por supuesto, en la medida que más y más código Javascript ha de ejecutarse en el lado del cliente, ha aumentado considerablemente la complejidad de las aplicaciones del lado del cliente. Es por ello que los desarrolladores han comenzado a apoyarse en lo que se conoce como los frameworks frontend. Entre los más populares actualmente tenemos a Angular, React y VueJS.

Qué es VueJS

Vue.js se anuncia como un «framework progresivo». Esta calificación nos indica que en realidad con Vue podemos crear todo tipo de desarrollos. Podrían ser componentes sencillos, que implementan una parte determinada de una aplicación web, pero también aplicaciones frontend completas, con su sistema de routing y cantidad de lógica de negocio.

Con VueJS se implementa lo que se conoce como arquitectura de componentes. Permite dividir las aplicaciones en bloques con funcionalidades independientes, llamados componentes. Esos bloques podrían ser una cabecera, un menú, un listado, una ficha de producto, etc. En realidad, cualquier cosa que podamos necesitar puede ser un componente. Además, unos componentes se pueden apoyar en otros, de modo que en un listado de productos podemos tener fichas de productos, que a su vez pueden estar compuestas por datos, botones, desplegables con información, etc.

Gracias a la arquitectura de componentes podemos construir aplicaciones a base de piezas reutilizables, de modo que, al final, las aplicaciones no son más que árboles de componentes que trabajan entre sí para implementar funcionalidades tan complejas como sea necesario.

Otra de las ventajas de VueJS es la posibilidad de creación de vistas reactivas. Esto quiere decir que Vue permite actualizar el HTML y CSS (la parte visual de la página) cuando cambian los datos de la aplicación, sin que el desarrollador tenga que invertir tiempo en propagar esos cambios de manera manual en cada lugar de la página donde se visualizan los datos que se alteraron.

Por qué usar VueJS

En lo que respecta a los frameworks frontend nos encontramos ante un panorama dominado por grandes organizaciones. Angular está apoyado por Google, mientras que React es creación de Facebook y, sin embargo, VueJS ha conseguido hacerse un hueco entre la comunidad y una muy representativa tasa de uso.

Una prueba de la enorme popularidad de Vue.js es la cantidad de estrellitas que tiene el proyecto en Github, superando incluso a React, como se puede ver en esta imagen:

El hecho de no haber ninguna  gran empresa detrás de Vue nos hace entender que los motivos de su éxito son fundamentalmente su utilidad y valor real para los desarrolladores.

¿Pero cuáles son los motivos del éxito de este framework Javascript y por qué satisface tanto a los desarrolladores?

  • Experiencia de desarrollo. Los desarrolladores de VueJS valoran muy positivamente la experiencia de trabajo con el framework en su día a día. Las funcionalidades de Vue abarcan casi todas las expectativas de los profesionales y aplicaciones web. Además ofrece cierta libertad a la hora de organizar el código de los proyectos y mantener las cosas simples.
  • Curva de aprendizaje. VueJS no requiere grandes esfuerzos para aprender, al menos para poder obtener sus principales beneficios, lo que produce que los desarrolladores que se acercan a la tecnología puedan empezar a trabajar con soltura, sin tener que invertir demasiado tiempo.
  • Flexibilidad. Gracias a VueJS tenemos la posibilidad de desarrollar muchos tipos de proyectos. No es necesario realizar aplicaciones frontend complejas, como single page applications (SPA) o Progressive Web App (PWA) para extraer ventajas de Vue.
  • Rendimiento. VueJS nos asegura un buen rendimiento de las aplicaciones, inclusive mayor que otras alternativas de frameworks populares. En esta imagen podemos ver una comparativa de benchmark de frameworks. Cuando menor es el número de milisegundos en realizar una tarea, mayor es el rendimiento.

A todo esto debemos añadir que Vue presenta una entusiasta comunidad de desarrolladores y una excelente documentación. Por ello podemos encontrar cantidad de información para aprender rápidamente a usar este framework Javascript, así como respuestas a la mayoría de los problemas que se pueden plantear en el día a día.