JAVASCRIPT

Hay muchos frameworks JavaScript

19 sep. 2018|Lectura de 2 minutos

En estos últimos años hemos conocido muchísimos frameworks JavaScript para desarrollar el frontend de nuestras aplicaciones. Javascript ha evolucionado demasiado este tiempo permitiendo crear SPAs, programar del lado del servidor, crear aplicaciones híbridas, bridge, PWAs, etc. Pero, ¿cómo comenzó todo esto?   

Recuerdo que hace unos 5 años atrás se hizo conocido Backbone.js. La principal novedad que nos traía era poder interactuar con nuestras interfaces implementando el patrón MVC (o una variación de esta). De dicha manera podíamos controlar por ejemplo las rutas y de esta manera evolucionar hasta lo que hoy conocemos como SPA (Single page applications).

Luego llegó AngularJS y nos cambió el paradigma. Conservando el mismo patrón (MVC) introdujo un concepto muy novedoso para ese entonces: Las directivas.

Las directivas nos permitían crear nuestros "componentes" personalizados y totalmente reutilizables. La idea penetró tan fuerte en el desarrollo web que ahora mismo no podemos concebir la web en general sin el concepto de Web Components.

Los creadores de AngularJS decidieron dar un giro total al concepto original y desarrollaron Angular 2. Totalmente reescrito utilizando TypeScript. Esa decisión hizo que angular se convierta, en parte, en una gran isla. (Cuando hablamos de isla nos referimos al uso de determinadas prácticas o conocimientos que sólo te sirven para una o pocas tecnologías, haciendo dificil que te puedas mover a otra tecnología porque ya te casaste con esta)

Facebook aprovechó esa desición para darle fuerza y crecer con su proyecto: ReactJS. Una librería que se encarga de manejar la vista de tus aplicaciones sin necesidad de tener que meterte con el modelo (por ende no necesitas controladores ni algo parecido). Para esto introdujo el concepto de Virtual DOM. Una representación del DOM real que se encarga de actualizar a este último renderizando solamente lo que se necesita y no volviendo a actualizar todo el DOM.

El cambio que sucedió con Angular hizo que uno de los trabajadores de Google (quién había trabajado en varios proyectos con AngularJS) se decantara por la idea de crear un framework propio, con las bondades más grandes de AngularJS pero con muchas mejoras e implementaciones basadas en su experiencia propia y en otros frameworks/librerías. Es de esa manera que Evan You crea VueJS, uno de los frameworks más populares hoy en día.

De la misma manera podríamos añadir a EmberJS, MeteorJS, NodeJS, etc, etc. (Sólo por nombrar a los más conocidos) y aún así nos faltaría mencionar a todos los proyectos que surgieron a raíz de estos que acabo de nombrar.

Esto ha originado una total anarquía al momento de usar JavaScript. Pero la pregunta de fondo es ¿Cómo y porqué elegir uno para nuestro proyecto?

En el EDcamp de Lima 2018, estuve conversando acerca de este punto conflictivo. El workshop estará disponible para todos ustedes en los próximos días con su suscripción en la app de EDteam