Historia y versiones
React existe desde hace lo suficiente como para haber pasado por varios períodos distintos, y conocer la forma general de esa historia te ayuda a leer el código que encontrarás en la práctica. Un tutorial de 2017 y uno de hoy pueden ser ambos "React" y aún así verse muy diferentes. Este capítulo recorre la línea de tiempo y explica los dos estilos que encontrarás.
Una breve cronología
React nació en Facebook, donde surgió de la necesidad de mantener interfaces grandes y pesadas en datos sincronizadas sin un lío de actualizaciones manuales del DOM. Se lanzó como código abierto en 2013, y la idea en su centro, describe la interfaz para tus datos actuales y deja que React maneje las actualizaciones, se ha mantenido constante desde entonces. Casi todo lo demás sobre cómo escribes React ha evolucionado alrededor de ese núcleo.
Durante sus primeros años, un componente que necesitaba recordar algo se escribía como una clase de JavaScript. Las clases son una característica ordinaria de JavaScript, y React las usaba para darle a un componente un lugar donde guardar datos que cambian con el tiempo, junto con un conjunto de métodos especialmente nombrados que React llamaría en ciertos momentos: cuando el componente aparecía por primera vez en pantalla, cuando se actualizaba y cuando se quitaba. Este estilo fue el predeterminado durante mucho tiempo, y es por eso que una gran cantidad del código React que ya existe se escribe de esa manera.
El gran cambio llegó con hooks, que aparecieron en React 16.8 a principios de 2019. Un hook es una función que React te proporciona y que permite que un componente de función plana haga cosas que antes solo una clase podía hacer, como recordar un valor entre renderizados. Escribir un componente se hizo mucho más corto, y los componentes de función rápidamente se convirtieron en el predeterminado para código nuevo. Hooks los cubre adecuadamente más adelante. Lo único que necesitas llevar adelante por ahora es que los hooks hicieron posible el estilo moderno.
React ha seguido avanzando desde entonces: React 18 llegó en 2022 y React 19 en 2024, cada uno agregando capacidades y suavizando asperezas. Esos lanzamientos importan más una vez que estés construyendo aplicaciones reales, y aparecen más adelante en el manual donde son relevantes.
Ese es el arco en grandes rasgos. No necesitas memorizar fechas. Lo útil es entender que React tiene una larga historia, los fundamentos se han mantenido estables, y el estilo de escritura se ha movido decididamente hacia componentes de función y hooks.
Dos estilos de React en el mundo real
Debido a esa historia, encontrarás React escrito en dos estilos notablemente diferentes.
El estilo más antiguo escribe un componente como una clase. Sus datos cambiantes viven dentro de la clase, y React llama a métodos especialmente nombrados en momentos establecidos en la vida del componente. Una gran cantidad de código en producción todavía funciona de esta manera, y muchos tutoriales antiguos, publicaciones de blog y respuestas de Stack Overflow están escritos en este estilo. Sigue funcionando y sigue siendo compatible. Es simplemente la forma anterior de escribir React.
Cómo se ve el estilo más antiguo
Este manual no enseña este estilo y no necesitas escribirlo. Vale la pena poder reconocerlo, porque te lo encontrarás. Una base de código más antigua tiene componentes que se ven algo como esto:
class Counter extends React.Component {
state = { count: 0 }
componentDidMount() {
// React llama a esto una vez, justo después de que el componente aparece por primera vez en pantalla
}
render() {
return <button>Clicked {this.state.count} times</button>
}
}Tres cosas lo distinguen: class y extends React.Component al principio, this.state como el lugar donde viven sus datos cambiantes, y nombres de métodos que comienzan con component que React llama automáticamente en momentos establecidos.
El estilo moderno escribe un componente como una función y usa hooks para darle memoria y ejecutar código cuando las cosas cambian. Esto es en lo que se escribe el código React nuevo, y es lo que la documentación oficial ahora enseña primero.
Este curso enseña React moderno: componentes de función y hooks en toda la extensión. Donde es probable que te encuentres con el equivalente más antiguo basado en clases, ya sea en una base de código en el trabajo o en un tutorial más antiguo, lo señalaremos para que los dos se conecten en tu mente y ninguno te sorprenda.
A partir de aquí el manual se construye en el estilo moderno, y Components es donde eso comienza en serio: un componente como una función que devuelve una parte de tu interfaz. Antes de que algo se ejecute, sin embargo, necesitas tener React instalado y ejecutándose en tu propia máquina.
class con this.state y componentDidMount, no entres en pánico y no pienses que lo estás haciendo mal. Ese es el estilo más antiguo de React, y aún funciona. Este curso usa el estilo más nuevo, componentes de función con hooks, y señalaré los equivalentes más antiguos cuando los pasemos para que nada te sorprenda.
A continuación: Configurar un proyecto de React, donde ejecutarás React en tu propia máquina.

