Curso de programación avanzada
Descripción del Curso
Este curso está diseñado para desarrolladores con una base sólida en desarrollo web (HTML, CSS y JavaScript básico) que deseen dominar técnicas avanzadas de programación para construir aplicaciones web modernas, escalables y de alto rendimiento. El curso abarca JavaScript avanzado, frameworks modernos, APIs, optimización de rendimiento y estrategias de despliegue.
Duración: 8 semanas
Nivel: Avanzado
Requisitos: Dominio de HTML, CSS, JavaScript (ES6+) y comprensión básica de conceptos de desarrollo web.
Formato de Aprendizaje: Auto guiado con ejercicios de codificación interactivos, proyectos y cuestionarios.

Plan de Estudios
Semana 1: Conceptos Avanzados de JavaScript
Temas:
Clausuras (closures) y ámbito (scope) en profundidad
Conceptos avanzados de JavaScript
Recursos:
Semana 2: JavaScript Moderno
Temas:
Desestructuración, operadores spread/rest
APIs Proxy y Reflect
Recursos:
Semana 3: React para Desarrollo Web Avanzado
Temas:
Ciclo de vida de componentes y hooks de React (useState, useEffect, useContext)
Gestión de estado con Redux o Context API
React Router para aplicaciones de página única
Optimización de rendimiento con memoización y carga diferida
Recursos:
Semana 4: Seguridad en Aplicaciones Web
Temas:
Vulnerabilidades comunes (XSS, CSRF, inyección SQL)
Autenticación y autorización seguras
Fundamentos de HTTPS y SSL/TLS
Política de Seguridad de Contenido (CSP)
Recursos:
Semana 5: Trabajando con APIs
Temas:
Principios de diseño de APIs RESTful
Fetch API y Axios para solicitudes HTTP
Manejo de autenticación (JWT, OAuth)
Fundamentos de GraphQL y Apollo Client
Actividades:
Conectar una aplicación React a una API pública (por ejemplo, la API de GitHub).
Construir una interfaz de consultas GraphQL para un conjunto de datos de muestra.
Recursos:
Semana 6: Optimización de Rendimiento
Temas:
Carga diferida y división de código
Métricas de rendimiento web (LCP, FCP, TTI)
Optimización de imágenes y activos
Estrategias de caché (Service Workers, caché HTTP)
Actividades:
Optimizar una aplicación web de muestra para tiempos de carga más rápidos.
Implementar un Service Worker para funcionalidad sin conexión.
Recursos:
Semana 7: Pruebas y Aseguramiento de Calidad
Temas:
Pruebas unitarias con Jest
Pruebas de extremo a extremo con Cypress
Principios de desarrollo guiado por pruebas (TDD)
Pruebas de accesibilidad (a11y)
Actividades:
Escribir pruebas unitarias para un componente de React.
Crear un conjunto de pruebas de extremo a extremo para una aplicación web.
Recursos:
Semana 8: Despliegue y DevOps
Temas:
Pipelines CI/CD con GitHub Actions
Despliegue en plataformas como Vercel, Netlify o AWS
Contenerización con Docker
Monitoreo y registro en producción
Actividades:
Desplegar una aplicación React en Vercel.
Configurar un pipeline CI/CD para pruebas y despliegue automatizados.
Recursos:
Proyecto Final
Tarea: Construir una aplicación una plataforma de comercio electrónico, un tablero de redes sociales o un administrador de tareas
Ir a