Prefacio
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Este libro no es para personas que quieran aprender a utilizar React. Si no estás familiarizado con React y buscas un tutorial, un buen lugar para empezar es la documentación de React en react.dev. En cambio, este libro es para los curiosos: gente que no está tan interesada en cómo utilizar React, pero que está más interesada en cómo funciona React.
Durante el tiempo que pasemos juntos, recorreremos una serie de conceptos de React y comprenderemos su mecanismo subyacente, explorando cómo encaja todo para permitirnos crear aplicaciones utilizando React de forma más eficaz. En nuestra búsqueda de la comprensión del mecanismo subyacente, desarrollaremos los modelos mentales necesarios para razonar sobre React y su ecosistema con un alto grado de fidelidad.
Este libro asume que hemos comprendido satisfactoriamente esta afirmación: los navegadores renderizan páginas web. Las páginas web son documentos HTML a los que se aplica estilo mediante CSS y que se hacen interactivos con JavaScript. También asume que estamos algo familiarizados con el uso de React y que hemos creado una o dos aplicaciones React. Lo ideal sería que algunas de nuestras aplicaciones React estuvieran en producción.
Empezaremos con una introducción a React y recapitularemos su historia, remontándonos a 2013, cuando se publicó por primera vez como software de código abierto. A partir de ahí, exploraremos los conceptos básicos de React, incluyendo el modelo de componentes, el DOM virtual y la reconciliación. Nos sumergiremos en la teoría del compilador sobre el funcionamiento de JSX, hablaremos de las fibras y comprenderemos en profundidad su modelo de programación concurrente. De este modo, obtendremos poderosos aprendizajes que nos ayudarán a memoizar con mayor fluidez lo que deba memoizarse y a aplazar el trabajo de renderización que deba aplazarse mediante potentes primitivas como React.memo
y useTransition
.
En la segunda mitad de este libro, exploraremos los frameworks React: qué problemas resuelven y los mecanismos por los que los resuelven. Lo haremos escribiendo nuestro propio framework, que resuelve tres problemas destacados en casi todas las aplicaciones web: renderizado del servidor, enrutamiento y obtención de datos.
Una vez que resolvamos estos problemas por nosotros mismos, comprender cómo los resuelven los frameworks será mucho más accesible. También profundizaremos en los Componentes de Servidor React (RSC) y las acciones de servidor, comprendiendo el papel de las herramientas de nueva generación, como los bundlers y los routers isomórficos.
Por último, nos alejaremos de React y estudiaremos alternativas como Vue, Solid, Angular, Qwik y otras. Exploraremos las señales y la reactividad de grano fino en contraste con el modelo de reactividad más grueso de React. También exploraremos la respuesta de React a las señales: la cadena de herramientas Forget y cómo se compara con las señales.
Hay mucho en lo que profundizar, así que no perdamos más tiempo. ¡Empecemos!
Convenciones utilizadas en este libro
En este libro se utilizan las siguientes convenciones tipográficas:
- Cursiva
Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo y extensiones de archivo.
Constant width
Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, sentencias y palabras clave.
Constant width bold
y texto gris claroSe utiliza en el capítulo 10 de la edición impresa para resaltar las diferencias en los bloques de código.
Nota
Este elemento significa una nota general.
Aprendizaje en línea O'Reilly
Nota
Durante más de 40 años, O'Reilly Media ha proporcionado formación tecnológica y empresarial, conocimientos y perspectivas para ayudar a las empresas a alcanzar el éxito.
Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita https://oreilly.com.
Cómo contactar con nosotros
Dirige tus comentarios y preguntas sobre este libro a la editorial:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Norte
- Sebastopol, CA 95472
- 800-889-8969 (en Estados Unidos o Canadá)
- 707-827-7019 (internacional o local)
- 707-829-0104 (fax)
- support@oreilly.com
- https://www.oreilly.com/about/contact.html
Tenemos una página web para este libro, donde se enumeran erratas, ejemplos y cualquier información adicional. Puedes acceder a esta página en https://oreil.ly/fluent-react.
Para obtener noticias e información sobre nuestros libros y cursos, visita https://oreilly.com.
Encuéntranos en LinkedIn: https://linkedin.com/company/oreilly-media
Síguenos en Twitter: https://twitter.com/oreillymedia
Míranos en YouTube: https://youtube.com/oreillymedia
Agradecimientos
Este libro es el primero que escribo, y estoy más que agradecida por no haberlo hecho sola. Lo que estás a punto de leer es el esfuerzo combinado de varias personas brillantes que han trabajado conjuntamente para hacerlo posible. En esta página, damos las gracias a estas personas por sus contribuciones a este texto.
Por favor, no te saltes esto, porque estas personas merecen tu atención y tu gratitud. Empecemos con las personas que me han ayudado directamente con este libro:
-
La número uno es siempre mi mujer, Lea. He dedicado mucho tiempo a escribir este libro, a menudo a costa del tiempo que pasamos juntos y en familia. Debido a mi alegría por el tema y a mi deseo de compartirlo con todos vosotros, el trabajo en este libro se ha comido ligeramente el tiempo de vacaciones y otras oportunidades de pasar tiempo con mi esposa. Ella no ha hecho más que apoyarme y animarme, y le estoy muy agradecido.
-
Shira Evans, mi editora de desarrollo en este libro. Ha sido un placer trabajar con Shira, de O'Reilly, y ha sido todo apoyo, ánimo y comprensión, incluso cuando nos enfrentamos a una serie de retrasos, ya que seguían apareciendo cosas nuevas con React, como Forget y las acciones de servidor. Shira nos ayudó pacientemente en todo, y le estoy muy agradecido.
-
Mi querido amigo y hermano Kent C. Dodds(@kentcdodds) por su continua tutoría fuera de las capacidades de este libro, y por su prólogo en este libro. Kent ha sido un querido amigo y mentor durante años, y estoy muy agradecida por su continuo apoyo y aliento.
-
Los revisores. Este libro no sería posible sin el increíble cuidado y atención al detalle de los revisores que colaboraron conmigo en este libro:
- Adam Rackis(@adamrackis)
- Daniel Afonso(@danieljcafonso)
- Fabien Bernard(@fabien0102)
- Kent C. Dodds(@kentcdodds)
- Mark Erikson(@acemarke)
- Lenz Weber-Tronic(@phry)
- Rick Hanlon II(@rickhanlonii)
- Sergeii Kirianov (@SergiiKirianov)
- Matheus Albuquerque(@ythecombinator)
-
El equipo React de Meta por su trabajo continuado en React, por seguir ampliando los límites de lo que es posible con React y por hacer que sea un placer utilizarlo gracias a su brillantez, ingenio y perspicacia ingenieril. En particular, a Dan Abramov(@dan_abramov), que dedicó su tiempo a explicar el papel del bundler en la arquitectura de componentes de servidor de React, así como por contribuir con una parte significativa del capítulo 9 sobre componentes de servidor de React.
Por último, me gustaría agradecerte a ti, lector, tu interés por este libro. Espero que te resulte tan gratificante leerlo como a mí me lo ha resultado escribirlo.
Get React fluido now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.