Los 5 mejores frameworks de JavaScript en 2017

Angular

Tras el esperado lanzamiento de Angular hacia finales de 2016, su popularidad ha alcanzado nuevas cotas, aunque AngularJS no va a ceder mucho terreno en 2017 y seguirá siendo muy utilizado, ya que existen multitud de aplicaciones creadas con esa versión, y el equipo de Google la sigue manteniendo y lanzando nuevas versiones.

El término «Angular 2» ha sido abandonado a partir de la versión 4. Dicho esto, debemos empezar a llamarle simplemente «Angular» sin el sufijo de la versión, como ya hemos dicho en varias ocasiones en este blog.

Angular a menudo se le define como framework MVW (Model-View-) y entre sus principales ventajas, para startups y PYMES destacan, por citar las más importantes solamente:

  • Desarrollo rápido.
  • Enlazado de datos en ambas direcciones.
  • Es muy «opinionado» (com dicen los yankis), es decir, te fuerza a usar buenas prácticas y una serie de arquitecturas, por lo que es fácil que cualquiera retome tu trabajo y también colaborar.
  • Facilidad de testing.

    Desde su lanzamiento ha llegado más lejos de lo que nadie se imaginada. Por ahora se le considera razonablemente el framework de JavaScript más usado para desarrollos de SPAs (incluyendo AngularJS y Angular) y es el que tiene, probablemente, la comunidad más grande de desarrolladores.

Angular viene con una larga lista de funcionalidades que permiten desarrollar de todo, desde aplicaciones web hasta aplicaciones de escritorio y móviles. El framework está hecho con TypeScript, con la intención de hacer que JavaScript sea más ágil y atractivo para grandes empresas. Angular destaca por tener una arquitectura basada en componentes, una inyección de dependencias mejorada, un servicio de logging eficiente, comunicación entre componentes y mucho más…

Angular es probablemente la mejor opción para empresas o para entornos de programación estrictos, con altos estándares en cuanto a la legibilidad del código.

ReactJS

React (también llamada React.js o ReactJS) es una biblioteca JavaScript de código abierto para crear interfaces de usuario con el objetivo de animar al desarrollo de aplicaciones en una sola página. Intenta ayudar a los desarrolladores a construir aplicaciones que usan datos que cambian todo el tiempo. Su objetivo es ser sencillo, declarativo y fácil de combinar.

Aunque lo hayamos incluido en la lista, hay que tener claro que, al contrario que Angular, es una biblioteca de UI, y no tanto un framework. Es decir, hay muchísimas cosas que deja fuera y que sus competidores sí que tienen, ya que está centrado en lo que está centrado: interfaces de usuario. En el patrón MVC (Modelo-Vista-Controlador), React.js sería la «V»

Lo bueno y malo a la vez es que puede ser integrado con cualquier arquitectura, pero debemos tenerla clara, ya que no nos viene marcada. Por ello es más demandante por parte de los desarrolladores, que necesitan utilizar otros frameworks, arquitecturas y componentes para dotar a sus aplicaciones de la funcionalidad que React no ofrece.

Debido al uso del «DOM virtual» ofrece un enorme rendimiento en el renderizado de interfaces, sobre todo si lo compramos con frameworks «viejos» de hace solo un par de años, como AngularJS (no Angular, ojo).

Se le considera el framework (aún sin serlo realmente) con mayor crecimiento. React está detrás de las interfaces de usuario de Facebook o Instagram, dando prueba de su valía en aplicaciones dinámicas con mucho tráfico.

A pesar de que tiene una curva de aprendizaje mayor que la de otros frameworks, una vez que lo aprendes es una forma de crear aplicaciones bastante sencilla y fácil de entender. Además puede encajar bien con soluciones de software complejas, ya que es fácil de combinar.

Es interesante para programadores individuales que disfruten con JavaScript, proyectos Open Source, empresas con una dirección técnica muy estricta y equipos con una formación de base en JavaScript/ECMAScript alta.

Vue.js

Vue 2.0 también se presentó en 2016. La idea era tomar prestado lo mejor de Angular, React e incluso EmberJS y convertirlo en una nuevo framework. Está demostrado en numerosas pruebas que es más rápido y ligero en comparación con Angular e incluso con React (¡herejía!).

Al igual que Angular, Vue.js ofrece enlace a datos en dos direcciones, posibilidad de renderizado en lado del servidor (también ReactJS). Del mismo modo, al igual que ReactJS, utiliza un DOM virtual, proporciona componentes reactivos y componibles, y se centra mucho en su núcleo, dejando cosas como el enrutado o el estado global en componentes de terceros. En este sentido es menos completo que Angular, pero más que ReactJS. Ah, e incluso ofrece soporte para componentes JSX de ReactJS si lo necesitásemos, pudiendo combinar ambas.

Su herramienta de línea de comandos, Vue-cli, proporciona una forma rápida de comenzar los proyectos sin partir de cero.

En este enlace de su página se ofrece una extensa comparativa entre Vue.js y otros frameworks y bibliotecas.

Su principal ventaja es que no tiene que cargar a cuestas con el «equipaje» que tienen Angular o React, y ha ido aprendiendo de sus aciertos y errores, por lo que es como aunar lo mejor de los dos mundos. Tiene un rendimiento brutal y es más fácil de aprender que los dos anteriores. Muchos desarrolladores se están pasando a Vue.js. La comunidad de Laravel (PHP) es el framework de lado cliente que ha elegido mayoritariamente.

Ember.js

Ya en 2015 Ember era considerado por muchos como el mejor framework JavaScript para aplicaciones web, dejando a React y AngularJS atrás. Hoy en día puede presumir de una gran comunidad online, actualizaciones periódicas y un uso de buenas prácticas de JavaScript que garantizan la mejor experiencia ya por defecto.

Ember proporciona también enlace de datos en dos direcciones, manteniendo tanto la vista como el modelo sincronizados todo el tiempo, y tiene integrada la popular sintaxis de Hadlebars para crear plantillas. Al igual que Angular ofrece una arquitectura clara para que no tengas que estar tomando decisiones todo el rato, lo cual facilita el desarrollo siguiendo buenas prácticas. Está más pensado para crear aplicaciones grandes desde cero que para pequeñas pruebas de concepto, componentes o incorporarlo a aplicaciones existentes.

Ofrece mucha solera y sabemos que está muy probado, lo cual siempre es una garantía. Es fácil de aprender comparado con Angular o React, y tiene una buena documentación online. Sería recomendable si quieres algo bien probado, que te marque bien las pautas para hacer bien las cosas e incorporar nuevos desarrolladores al proyecto sin problema. Frente a Angular ofrece mayor estabilidad histórica, ya que lleva años en existencia, con una gran calidad y sin romper la compatibilidad al sacar nuevas versiones. Además la empresa que tiene detrás, Tilde, muy conocida en el mundo del desarrollo, lo utiliza para todos sus productos, por lo que tienen mucho cuidado de que esto sea así.

Aurelia

Como les gusta decir a sus fans, Aurelia es el framework JavaScript más popular del que nunca has oído hablar. Y es que se trata de un framework que tiene una gran cantidad de seguidores que simplemente lo adoran.

Su creador es Rob Eisenberg, que fue el creador de su predecesor, el mítico Durandal.js. Rob trabajó en el equipo de Angular creando su actual encarnación (lo que se llamó al lanzarlo Angular 2), pero lo abandonó por no estar muy de acuerdo con las decisiones técnicas y de diseño que se tomaban.

Aurelia es un nuevo framework creado con los últimos estándares en mente (lo cual es una gran cosa, comparándolo con React y Angular), y con todo el aprendizaje que tiene detrás Rob y su equipo con Durandal y Angular. No es tan conocido como los demás, ni tiene una comunidad tan grande detrás, pero a cambio ofrece un equipo de desarrolladores más dedicado que ningún otro, siempre dispuesto a ayudar y resolver tus preguntas.

La gente que aprende Aurelia generalmente lo adora y no quiere saber nada de los otros frameworks, de los que dicen estar a años luz.

Aurelia es como si fuese una variante Angular más elegante y sencilla de entender. Utiliza también TypeScript, por lo que la escritura de código es menos propensa a errores y más sencilla que con JavaScript. Una de las cosas que más le gusta a sus seguidores es la forma de definir componentes, sin el uso de sintaxis rebuscadas, como sí ocurre con Angular y (sobre todo) React. Los componentes escriben en JavaScript y HTML estándar (bueno, en realidad en TypeScript y HTML, que luego se generan a JavaScript) y se parecen mucho a las plantillas que se han usado tradicionalmente en desarrollo web. Es muy rápido y ligero, a pesar de no usar un DOM virtual, que no tiene nada que envidiar en rendimiento a React. Utiliza convenciones para evitar tener que configurar tantas cosas. No depende de componentes de terceros.

Aquí tienes una comparación interesante con Angular y React en palabras de su creador.

Si no tienes miedo de tener menos apoyo de la comunidad que con los anteriores, Aurelia es un framework completo y capaz de hacer cualquier cosa que tengas en mente, es más ligero que Angular y tan rápido como React. ¿Te atreves con él?

Fuente: https://www.campusmvp.es/recursos/post/los-5-mejores-frameworks-de-javascript-en-2017.aspx

Addonmall.com