ReactJS, qué es y cómo funciona
26/10/2017

ReactJS, qué es y cómo funciona

Programación y Diseño Web

Ha llegado el momento de hablar de una tecnología web que aún no hemos mencionado nunca en el blog, una tecnología que no es nueva precisamente y proviene ni más ni menos que de Facebook. Si, el señor Mark Thuckerberg nos ha brindado con una herramienta para enriquecer el front end de nuestra aplicación web, usada en Instagram, la misma Facebook, AirBnB o el sitio para consumir series de forma online más conocido de mundo, Netflix. Hoy vamos a hablar y analizar ReactJS, un framework open source muy útil y que podemos adaptar a nuestros proyectos existentes creados con el ya conocido AngularJS.

ReactJS, otro candidato para nuestras aplicaciones web

Antes de pasar a ver cómo podemos incorporar ReactJS a nuestro proyecto, vamos a entender como funciona y qué tiene de distinto respecto otros frameworks que ya hemos visto. Lo primero, diferencias con AngularJS. React no usa el modelo vista-controlador, o MVC, como es el caso de Angular, y eso es porqué el primero únicamente está orientado a la visualización, no a la lógica. En otras palabras, React sería la parte “V” en MVC, es decir, la vista. Esto nos otorga una extensión fantástica ya que podemos seguir usando otro framework para la lógica Javascript, mientras que reservamos React en la parte de lo que nuestros usuarios van a ver en la capa que más les llega y entra por los ojos.

Recordemos que el modelo mvc separa la funcionalidad de la parte visual, enlazando los datos que procesa de la fachada para pasarla a las tripas. Esto significa que podemos usar ReactJS sin problemas. Al fin y al cabo esta es la magia de los frameworks. Sin ir más lejos: ASP.net de Microsoft es su plataforma para realizar páginas web dinámicas, funcionando también bajo MVC y con una dinámica muy parecida a AngularJS pero con C# como lenguaje de scripting. Bien, pues podemos incorporar Bootstrap para gestionar los CSS, Angular si preferís Javascript...etc. En otras palabras, ls tecnologías se pueden mezclar y justamente eso ocurre con React.

Pero ahora bien, ¿qué hace este framework tan especial?

El secreto está en su manera de gestionar el DOM, el cuerpo del html. Recordemos que estas herramientas hacen los cambios de forma dinámica y en vivo, renderizando el DOM a cada cambio, mientras que React hace una copia en memoria del original para que la comparación de cambios sea muy rápida, otorgando una fluidez increíble, siendo más eficiente en la práctica final. Todo esto sin salir de Javascript, no lo olvidemos. Es fantástico que Facebook nos haya liberado esta librería para poder usarla sin restricciones.

ReactJS ha ganado muchos adeptos desde su estreno, tanto plataformas profesionales enormes como pequeños equipos y no en vano. Pensad que cada varios años es probable que queramos actualizar la tecnología que mueve nuestros proyectos y hay que saber escoger correctamente. Salen muchas opciones en pocos meses, tantas que a veces no sabes ni dónde mirar y esto, pese a que puede parecer una virtud, a mi personalmente me satura demasiado, porqué implica que antes de empezar el proyecto o la migración hay que hacer un estudio exhaustivo de todas las propuestas y saber decidir. ¿y si me equivoco o deja de tener soporte mi elección? No hay nada más frustrante que decidir tirar por un camino y que de repente esa solución deje de tener soporte por parte del desarrollador oficial. Sin ir más lejos, desde que empecé con el tema de las aplicaciones móviles han salido una cantidad se frameworks que son tan válidos como el camino nativo que asusta.

Ya para terminar, ¿debéis olvidar todo lo estudiado y meteros de cabeza con ReactJS?

No, sería un error. Primero, y ahora hablo con el sombrero de profesor, terminad de asentar bien las bases con alguna propuesta que he ido mencionando, ya sea AngularJS, nuestro curso de Apache Cordova, o lo que os sea más cómodo. Con esto aprenderéis el modelo mvc, a programar y entender la naturaleza de una aplicación web capaz de ser ejecutada tanto en el navegador como en un dispositivo móvil, y para terminar ampliad vuestra base con herramientas que extiendan la funcionalidad y calidad de vuestro producto, como hace ReactJS para el front end. De modo qe mucho ánimo, alumnos.

¿Os parece interesante ReactJS? ¿Le veis la utilidad respecto AngularJS u otros frameworks?

Cada vez es más habitual que grandes empresas como Facebook inviertan capital en I+D para poder dar con herramientas muy potentes, sobretodo en el apartado de las aplicaciones web, y terminen por liberar el código para todos los usuarios. Podemos decir que estamos en un gran momento para el software libre y se demuestra día tras día, incluso con Microsoft haciendo propuestas open-source. Quien lo iba a decir...

Curso relacionado: Curso Superior de Desarrollo de Aplicaciones para Móviles

Comparte en:

Grado Superior de Desarrollo de Aplicaciones informáticas en la Salle de Barcelona. Trabaja actualmente como desarrollador de aplicaciones para móviles, especialidad en videojuegos.

Mejores plataformas para crear un ecommerce
21/05/2020
Carlos Yañez

Mejores plataformas para crear un ecommerce

En el post de hoy veremos cuales son las plataformas de ecommerce más adecuadas para crear una tienda on-line para que, si estás interesado, puedas desarrollar tu pr...

Consejos para detectar un ciberataque
21/05/2020
Rubén Bellido

Consejos para detectar un ciberataque

Estamos en un momento de pleno auge digital, es por ello que también estamos en un punto que los ciberataques van en aumento exponencialmente y así lo demuestran dif...

claves web exito
09/05/2020
Carlos Yañez

6 consejos para hacer una web exitosa

En el post de hoy te daremos las claves para que tu web sea realmente exitosa. Veamos en qué apoyarnos para conseguir el éxito.