2.4 Empezando a desarrollar en React
Casi todos los principales frameworks de JavaScript cuentan con herramientas de línea de comandos, lo que facilita las tareas rutinarias que surgen durante el desarrollo. La tarea más laboriosa del proceso de desarrollo es la configuración del entorno. Esto se debe principalmente a que se deben integrar numerosas herramientas para el proceso de desarrollo y compilación.
Normalmente, herramientas como gestores de paquetes, empaquetadores como Webpack, Babel (como transpilador) y muchas otras colaboran en el desarrollo de una aplicación web. Una herramienta de línea de comandos como Create React App gestiona la coordinación de estas herramientas y crea una estructura básica para la aplicación.
2.4.1 Requisitos
Para implementar una aplicación React, necesitas algunas herramientas en tu computadora.
Node.js
Por ejemplo, deberías tener una versión actualizada de Node.js. Puedes obtenerla directamente desde https://nodejs.org/ como paquete de instalación o a través del gestor de paquetes de tu sistema operativo.
Editor
Además de Node.js, deberías instalar un editor en tu sistema que puedas usar para escribir el código fuente de tu aplicación. Recomiendo usar el editor gratuito de Visual Studio Code de Microsoft o el entorno de desarrollo de pago WebStorm de JetBrains, aunque puedes usar prácticamente cualquier editor. Sin embargo, asegúrate de que cuente con funciones útiles como resaltado de sintaxis para JavaScript, TypeScript y, en el mejor de los casos, React y JSX, y que ofrezca completado de código, es decir, la correcta finalización de los nombres de variables y métodos al empezar a escribirlos.
2.4.2 Instalación de la aplicación Create React
Las variantes presentadas hasta ahora para iniciar el desarrollo con React tienen la desventaja de que permiten un inicio rápido, pero la comodidad del desarrollo se ve limitada. Este problema se soluciona con el proyecto Create React App. Se trata de una herramienta de línea de comandos desarrollada por Facebook. El sitio web del proyecto se puede encontrar en https://create-react-app.dev/. A diferencia de otras herramientas de interfaz de línea de comandos (CLI) (como Angular CLI) que guían al usuario a través de todo el ciclo de vida de la aplicación, Create React App solo asiste en el proceso de creación de la aplicación.
Create React App se encarga de casi todo el trabajo de inicialización de una aplicación. La herramienta crea la estructura básica de la aplicación, descarga todas las dependencias necesarias y prepara todo para que puedas empezar a desarrollar directamente. La aplicación generada utiliza paquetes establecidos en la comunidad para tareas estándar, como Webpack como empaquetador y Babel como transpilador. Sin embargo, Create React App gestiona la configuración de las herramientas utilizadas por defecto y permanece oculta para que no tengas contacto con ella. En la mayoría de los casos, la configuración predeterminada es suficiente. Si no es el caso de tu aplicación, puedes exportar la configuración y adaptarla. Para saber cómo funciona exactamente, consulta la Sección 2.4.4.
Otra práctica función que ofrece Webpack es el servidor de desarrollo de Webpack, un servidor web local que permite probar la aplicación directamente. Durante el desarrollo, cada vez que se realiza un cambio en el código fuente, los archivos afectados se reprocesan y se insertan en la aplicación en ejecución. La infraestructura garantiza que los navegadores se recarguen automáticamente para que los cambios surtan efecto de inmediato. Bajo ninguna circunstancia se debe utilizar el servidor de desarrollo para operaciones de producción, ya que al recargar la aplicación se restablece su estado en el navegador.
El objetivo principal de Create React App es facilitar el inicio rápido del desarrollo, minimizando la complejidad. Esto se refleja, por un lado, en la configuración predeterminada mencionada anteriormente y, por otro, en la gestión de dependencias. Si consulta la lista de dependencias instaladas directamente en el archivo package.json de una aplicación React nueva creada con Create React App, encontrará un total de tres bibliotecas instaladas: react, react-dom y react-scripts. Todas las demás dependencias necesarias son de estas tres bibliotecas, lo que también simplifica enormemente el proceso de actualización de una aplicación.
Pero basta de introducción; ¡comencemos a desarrollar una aplicación! Tienes varias opciones para instalar Create React App, según el gestor de paquetes y la estrategia que elijas.
Initialization Using “npm init” and “npx”
While several package managers exist for JavaScript, NPM is by far the most widely used. The simplest way to initialize your React application is to use the npm init command. Using
npm init react-app libraryListing 2.9 Initializing a React application using “npm init”
you also create a local directory named library where Create React App builds the structure for your application. If Create React App isn’t installed on your system, NPM will download it temporarily, run it, and then discard it. Typically, you use the npm init command to create a new package.json file in an interactive process. In our case, you also pass the react-app initializer. NPM then uses the npxtool to download the package named create- and the name of the initializer and run it. Alternatively, you can also use npx directly. In this case, the relevant command is as follows:
npx create-react-app libraryListing 2.10 Creation of a New React Application Using “npx”
The effects of both commands are equivalent, and you can start working on your application directly afterward.
Do not Use the Global installation via NPM
A previously very common way to use Create React App was to install the tool globally via the -g option, which you can see in the following command:
npm install -g create-react-appListing 2.11 Installing Create React App Globally Using NPM
The global installation ensures that the tool is available to you system-wide on the command line. The drawback is that you then have only one fixed version of Create React App in your entire system and you have to take care of updating the tool yourself. Because you only need Create React App once for an application —namely, during the initialization— the risk of the tool becoming obsolete is very high. Today, Create React App even prohibits a global installation. If you try to use the tool in this mode, you’ll get the following error message: “We no longer support global installation of Create React App.” In this case, you have no choice but to uninstall the global installation and use one of the variants described previously.
In addition to NPM, you can use Yarn as a full-featured alternative to initialize your application.