Para adentrarme en el fascinante mundo de React.js, decidí seguir un curso muy recomendado en YouTube impartido por Midudev. Sus tutoriales son claros e incluyen ejercicios prácticos que son esenciales para un aprendizaje sólido. ⚛️ CURSO DE REACT 2024 – YouTube
Mis Primeros Pasos con React.js
El curso de Midudev me proporcionó una base robusta en los fundamentos de React.js. Aprendí a:
- Crear proyectos desde cero, sentando las bases para cualquier desarrollo futuro.
- Diseñar y reutilizar componentes, comprendiendo cómo modularizar el código para hacerlo más eficiente y escalable.
- Familiarizarme con términos clave y conceptos esenciales de React, como la utilización de props para pasar datos entre componentes.
Profundizando con useState y useEffect
Uno de los primeros ejercicios para entender el funcionamiento de React fue la creación del clásico juego del Tres en Raya (también conocido como «Gato»). Este proyecto fue la oportunidad perfecta para aplicar dos de los hooks más poderosos de React:
- useState: Lo utilicé para manejar los estados de cada cuadro en el tablero del juego. Esto implicó controlar si un cuadro estaba vacío, si contenía una ‘X’ o un ‘O’, y cómo estos cambios afectaban la lógica del juego.
- useEffect: Este hook fue crucial para ejecutar código arbitrario en momentos específicos del ciclo de vida del componente, como verificar si había un ganador después de cada movimiento.
También fue aquí donde comprendí la naturaleza asíncrona del estado en React, lo que significa que los cambios de estado no siempre se reflejan de inmediato.
El ejercicio del Tres en Raya me desafió a implementar varias funcionalidades clave:
- Detección de la jugada ganadora
- Gestión de ganadores.
- Uso de modales.
- Botón de reinicio.
- Renderizado de elementos con map.
Tecnologías Utilizadas
Para llevar a cabo este proyecto, trabajé con herramientas esenciales en el ecosistema de desarrollo web moderno:
- Visual Studio Code.
- Vite.
- Node.js.
Conclusión
La creación del juego del Tres en Raya fue una experiencia de aprendizaje invaluable. Me permitió dominar el uso de los estados (useState) y los efectos (useEffect) en React.js, comprendiendo cómo se pueden aprovechar estas herramientas para añadir funcionalidades avanzadas e interactividad dinámica a los sitios web. Este proyecto no solo consolidó mis habilidades en React, sino que también me preparó para abordar desafíos de desarrollo web más complejos con confianza.



