Estudio sobre React y su ecosistema
Por aquí adjunto el pdf de un estudio que realicé, junto con un compañero, sobre React y su ecosistema.
Dejo la introducción abajo por si queréis tener una idea rápida sobre qué va:
«»»
Es innegable que la sociedad actual se encuentra inmersa en una imparable transformación digital, siendo el software uno de los pilares básicos en los que se sustenta dicho proceso. En este proceso, como en todo aquel que está en auge, surge una enorme amalgama de opiniones, alternativas, conceptos y modas de toda índole, que a veces hacen que se pierda la perspectiva del objetivo de la ingeniería de software, que es el de producir productos de alta calidad con el menor tiempo y coste posible.
Esta desviación se puede observar en el surgimiento de una infinidad de herramientas de desarrollo, librerías de Javascript, gestores de paquetes, librerías de componentes y demás, que en esencia hacen lo mismo, pero que han producido que se desvíe la atención del desarrollo web hacia las tecnologías y su idiosincrasia, en lugar de hacia cuestiones de mayor interés como son, entre otras, la ingeniería de requisitos, la usabilidad, la accesibilidad y la experiencia de usuario.
Así pues, el objetivo de este trabajo es el de centrarnos en una tecnología web puntera y en cierta medida estandarizada como React (librería del lenguaje de programación Javascript) a la que acompañaremos con Material UI (librería de componentes para React) para el desarrollo de interfaces de usuario. Para ello, ahondaremos en los conceptos básicos de React, su ecosistema y Material UI, así como desarrollaremos un prototipo con las tecnologías mencionadas. Además, también se ilustrarán tecnologías, arquitecturas y técnicas que pueden complementar y mejorar considerablemente los proyectos desarrollados con React.
Las distintas partes en las que se divide nuestro estudio son:
─ Características y conceptos clave de React: se tratan las características más destacables de React, como son los gestores de paquetes como NPM, el lenguaje JSX, los conceptos de Virtual DOM, state, renderizado, componente y hook.
─ Material UI: se explica esta famosa librería de componentes.
─ Caso práctico: se ilustra un prototipo web desarrollado para este trabajo, así vinculando muchos de los conceptos desarrollados en los apartados anteriores.
─ Comparativa con otros lenguajes para el prototipado: se compara React frente a sus principales competidores para el prototipado, Angular y Vue, así justificando nuestra decisión por React.
─ Problemas y mejoras para proyectos en React: se muestran algunos de los principales problemas que sufren los proyectos desarrollados con React y se proponen posibles soluciones.
─ Conclusiones y vías futuras: en el que se recapitula lo desarrollado a través de los demás apartados y se proponen vías futuras.
«»»