En 2019 no es posible hablar de la web y sus tecnologías sin hacer referencia a React, como lo hizo Sergio hace unos meses, en su artículo sobre “Tendencias Tecnológicas Web en 2019”. La cuestión es que, si JavaScript es el lenguaje más popular del momento, también lo es gracias al Framework creado por Facebook en 2013: ReactJS, o React para los amigos. ;)
¿Por qué un Framework?
Un framework de software es útil, pues proporciona una forma estándar de desarrollar y desplegar aplicaciones. Su objetivo es simplificar el desarrollo de aplicaciones gracias a su enfoque universal y reutilizable.
¿Qué es React?
Aunque yo insista que React es un framework - si quieres lo discutimos - React se define a sí mismo como “una biblioteca de JavaScript para desarrollar interfaces de usuarios”. Su enfoque basado en “vistas declarativas” permite crear de forma fácil UIs interactivas y hacer del código un código más predecible y fácil de depurar.
Creo que es importante tener en cuenta que React fue lanzado en 2013 después de ser utilizado internamente por Facebook, y hoy es utilizado por muchos proyectos importantes, en producción.
¿Por qué React?
La alta adopción y la popularidad de la herramienta, y además siendo Open Source, ha traído beneficios como la existencia de más recursos y más documentación para desarrolladores.
React es el framework de JavaScript más popular hoy mismo, y la tendencia es que así lo sea por mucho tiempo, gracias no solamente a la inversión de sus creadores, pero también al número elevado de desarrolladores que han contribuido para su código base.
Creo que React revolucionó la web, pues su popularidad también obligó a que los vendors (Chrome, Mozilla, Apple, Microsoft) optimizaran especificaciones de sus navegadores para mejorar el rendimiento de sitios webs desarrollados con React. Y esto se nota en Chrome y en Firefox. Seguro que te habrás fijado que la nueva versión de Twitter tiene un rendimiento y velocidad envidiables comparando con su versión anterior.
Si te estás planteando utilizar React en tus proyectos, pienso que es importante no ignorar estas jugadas estratégicas, si quieres mantener tus sitios web rápidos y con una experiencia de usuario adecuada.
¿Quién usa React?
Desde aplicaciones como Twitter, pasando por sitios web como el New York Times, Netflix o MDN, muchas marcas importantes han visto en React la solución perfecta para sus herramientas.
“Site Generators” basados en React
La popularidad de React hizo que se desarrollaran nuevos frameworks, bibliotecas y herramientas con la intención de simplificar aún más las tareas de tus desarrolladores. Algunas de estas herramientas te permiten generar sitios web estáticos y funcionan muy bien para el enfoque JAMstack. Los siguientes son algunos ejemplos:
¿Qué diferencia hay entre React y React Native?
Una de las características principales de React, es que permite “aprender una vez” y “escribir en cualquier sitio”. Esto permite desarrollar nuevas características sin reescribir código existente. Además, y gracias a Node, es posible procesar React en el servidor y desarrollar aplicaciones móviles usando React Native.
Esta es una característica muy potente. Como muchas veces hay confusión entre las “dos” tecnologías, es importante saber que ambas tecnologías tienen sintaxis y workflow semejantes, pero sus componentes son diferentes.
Te recomiendo leer el artículo de Varun Bhagat sobre algunas de las diferencias, pero desde mi punto de vista una de las más importantes, es que a diferencia de otras soluciones para aplicaciones híbridas, que procesan su código mediante WebView, React Native viene con Módulos Nativos y Componentes Nativos para mejorar el rendimiento. React Native procesa componentes mediante APIs nativas.
¿Algo más que deba saber?
Por haber sido desarrollado por Facebook, React es un framework suficientemente maduro para cualquier desarrollo de aplicaciones web, pues está implementado en productos que usas diariamente como WhatsApp o Instagram.
Además, gracias a los recursos, bibliotecas, paquetes y componentes ya existentes, permite a tus desarrolladores desarrollar de forma rápida. Si te preocupa el costo, obviamente que depende de varios factores, como la experiencia de los mismos desarrolladores, pero puede ser muy económico desarrollar un PMV con React.
Conclusión
Para terminar, React no es la única herramienta de su estilo, pero vale la pena saber que es una herramienta que debe estar en tu caja de herramientas, pues tiene una estructura reutilizable basada en componentes, es fácil mantener las aplicaciones basadas en este framework debido a su estructura modular, y permite un desarrollo de front-end con un rendimiento rápido y eficiente.
¿Utilizas React en tus aplicaciones? ¿Qué tal la experiencia?
Fotografía: Startup Stock Photos from Pexels
Fuente: https://reactjs.org/