Skills que aprenderás
Convocatorias
No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.
Recursos
No hay recursos disponibles todavía para esta convocatoria
Este curso está dirigido a desarrolladores con conocimientos básicos de React que quieren dar sus primeros pasos en Next.js, el framework de producción más utilizado para construir aplicaciones web modernas sobre React. A lo largo de las diez horas de formación, el participante comprenderá qué aporta Next.js frente a una aplicación React pura, aprenderá a estructurar proyectos generados con create-next-app, dominará el sistema de enrutamiento basado en ficheros y distinguirá las tres estrategias de renderizado —CSR, SSR y SSG— aplicando getStaticProps y getServerSideProps en casos reales. Como resultado concreto, el alumno será capaz de crear y ejecutar una aplicación Next.js funcional con múltiples páginas, datos obtenidos desde una API REST e imágenes optimizadas, lista para ser revisada o desplegada en un entorno de desarrollo.
Al finalizar el curso, el participante será capaz de:
<Link>.getStaticProps y getServerSideProps en páginas de ejercicios guiados para obtener datos de una API REST pública y justificar la elección de una u otra función según el caso.<Image> de next/image sustituyendo etiquetas nativas, especificando correctamente todas las props obligatorias y eliminando advertencias en consola.Bloque 1 — Introducción a Next.js y estructura del proyecto
El curso arranca situando Next.js dentro del ecosistema React: se analiza qué problemas resuelve el framework frente a una Single Page Application clásica —enrutamiento integrado, renderizado en servidor y optimización de recursos— y se comparan al menos dos de sus características con el enfoque sin framework. A continuación, el participante genera su primer proyecto con create-next-app, arranca el servidor de desarrollo y verifica que la aplicación responde en localhost:3000. Se dedica tiempo a recorrer la anatomía del proyecto resultante, entendiendo el papel de pages/, public/, styles/, next.config.js y _app.js antes de escribir una sola línea de código propia.
Bloque 2 — Enrutamiento basado en ficheros
Next.js convierte cada archivo dentro de pages/ en una ruta accesible del navegador. En este bloque se construyen al menos tres páginas nuevas —incluyendo una ruta dinámica con parámetro ([id].js)— y se conectan entre sí usando el componente <Link> en lugar de anclas HTML nativas. Se explica por qué esta convención simplifica la navegación respecto a react-router-dom y qué implicaciones tiene sobre la organización del código.
Bloque 3 — Estrategias de renderizado y data fetching
El núcleo del curso profundiza en la decisión más importante al trabajar con Next.js: cuándo generar el HTML. A partir de un diagrama de ciclo de vida, se describen y contrastan CSR, SSR y SSG, identificando qué función —getStaticProps o getServerSideProps— habilita cada estrategia. Tras la parte conceptual, el participante aplica ambas funciones en ejercicios guiados: primero consume una API REST pública con getStaticProps para pre-renderizar una página en tiempo de build; después utiliza getServerSideProps para obtener datos en cada petición y documenta en el propio código por qué ese caso concreto requiere renderizado en servidor.
Bloque 4 — Optimización de imágenes y depuración de errores
El bloque final trabaja dos habilidades transversales esenciales para el trabajo diario. Por un lado, el participante sustituye etiquetas <img> nativas por el componente <Image> de next/image en una página de ejemplo, configurando correctamente src, alt, width y height, y comprueba que la consola queda libre de advertencias. Por otro, se presenta un proyecto con fallos intencionados —una ruta mal nombrada, getStaticProps no exportada y una prop alt ausente— y el alumno practica la localización y corrección de cada error a partir de los mensajes del compilador y del navegador, consolidando así los hábitos de depuración en entornos Next.js.
create-next-app, instalar dependencias y consumir APIs REST públicas durante los ejercicios.import/export, async/await y promesas.useState y comprensión del ciclo de vida con useEffect.