Historia y versiones
React lleva el tiempo suficiente en el mercado como para haber pasado por varias épocas distintas, y conocer el esquema general de esa historia te ayuda a entender el código que encontrarás en el mundo real. Un tutorial de 2017 y uno de hoy pueden ser ambos "React" y verse completamente diferentes. Este capítulo recorre la línea de tiempo y te explica los dos estilos en los que te toparás.
Una breve cronología
React nació en Facebook, donde surgió de la necesidad de mantener interfaces grandes y cargadas de datos sincronizadas sin enredarse en un laberinto de actualizaciones manuales del DOM. Se lanzó como código abierto en 2013, y la idea central, describir la UI para tus datos actuales y dejar 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 utilizó 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 removía. Este estilo fue el predeterminado durante mucho tiempo, y es por eso que gran parte del código React que ya existe se escribe de esta manera.
El gran cambio llegó con los 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 plano 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 se convirtieron rápidamente en lo predeterminado para el código nuevo. Hooks los cubre adecuadamente más adelante. Lo único que necesitas tener en mente por ahora es que los hooks son lo que hizo posible el estilo moderno.
React ha seguido evolucionando desde entonces: React 18 llegó en 2022 y React 19 en 2024, cada uno añadiendo 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 panorama en general. No necesitas memorizar fechas. Lo útil que puedes llevarte es que React tiene una larga historia, los fundamentos se han mantenido firmes, 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, te encontrarás con React escrito en dos estilos notablemente diferentes.
El estilo más antiguo escribe un componente como una clase. Sus datos que cambian viven dentro de la clase, y React llama métodos especialmente nombrados en momentos establecidos de la vida del componente. Una gran cantidad de código en producción aún funciona de esta manera, y muchos tutoriales antiguos, publicaciones de blog y respuestas de Stack Overflow están escritos así. Todavía funciona 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 más o menos así:
class Counter extends React.Component {
state = { count: 0 }
componentDidMount() {
// React llama esto una vez, justo después de que el componente aparece por primera vez en pantalla
}
render() {
return <button>Se hizo clic {this.state.count} veces</button>
}
}Tres cosas lo marcan: class y extends React.Component al principio, this.state como el lugar donde viven sus datos que cambian, 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 para ejecutar código cuando las cosas cambian. Esto es con lo que se escribe el código React nuevo, y es lo que la documentación oficial ahora enseña primero.
Esta pista enseña React moderno: componentes de función y hooks en todas partes. 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 antiguo, lo señalaremos para que los dos se conecten en tu mente y ninguno te sorprenda.
De aquí en adelante el manual se construye en el estilo moderno, y Componentes es donde eso comienza en serio: un componente como una función que devuelve una pieza de tu UI. Antes de que se ejecute cualquiera de esto, 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 antiguo de React, y aún funciona. Esta pista 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. Siguiente: Configurar un proyecto React, donde tendrás React ejecutándose en tu propia máquina.

