Guía Definitiva
Actualízate rápido y fácil de Java 8 a Java 21
Lo que serás capaz de hacer
Java ha cambiado más en los últimos años que en toda la década anterior. Sin embargo, muchos proyectos siguen anclados en Java 8, acumulando deuda técnica, código verboso y patrones que hoy ya no son la mejor opción. Este curso nace exactamente para cerrar esa brecha. En “Migración de Java 8 a Java 21” aprenderás a llevar código legacy a Java moderno , de forma práctica, segura y con criterio de ingeniería , no solo copiando features nuevas sin entenderlas. El enfoque del curso es 100% aplicado: partimos de ejemplos reales escritos como se hacía en Java 8 y los evolucionamos paso a paso hasta Java 21, explicando por qué conviene cada cambio y cuándo no hacerlo . A lo largo del curso trabajarás con temas clave como: Evolución del lenguaje (var, records, sealed classes, pattern matching) Streams y Optional usados correctamente (sin sobreingeniería) Concurrencia moderna: virtual threads, structured concurrency y errores comunes Cambios en APIs, rendimiento y buenas prácticas actuales Cómo pensar una migración incremental sin romper producción Este curso no es para principiantes ni para aprender Java desde cero. Está diseñado para desarrolladores que ya programan en Java , que mantienen sistemas reales y quieren escribir código más claro, más corto y más mantenible. Si trabajas con Java en producción y quieres dejar de programar “como en 2015”, este curso es para ti.
- Migrar código Java 8 a Java 21 aplicando buenas prácticas modernas sin romper sistemas en producción.
- Entender cuándo usar features modernas de Java y cuándo evitarlas para no sobreingenierizar.
- Reducir deuda técnica mejorando legibilidad, mantenimiento y expresividad del código.
- Aplicar concurrencia moderna y nuevas APIs con criterio en proyectos Java reales.
Temario
UNIDAD 1 - Introducción y preparación · 8 leccionesUNIDAD 1 - Introducción y preparación
UNIDAD 1 - Introducción y preparación
- Introducción
- Material del curso
- Instalación JDK
- Hola Mundo tradicional
- Single File Source Execution
- Introducción a jshell
- Creación de métodos y records con jshell
- Guardado y apertura de scripts con jshell
UNIDAD 2 - Fundamentos · 21 leccionesUNIDAD 2 - Fundamentos
UNIDAD 2 - Fundamentos
- Instalación de intellij
- Creación de un proyecto
- Uso de var
- Ejemplo real sin uso de var
- Utilizando var en streams y colections
- Restricciones de var
- Lugares donde se puede usar var
- Mejores prácticas
- String text blocks
- Nuevos métodos en String
- Concatenación moderna
- Uso tradicional de Switch
- Swicth como expresión
- Expresiones switch con enums
- Switch con multiple coincidencia
- Switch con pattern matching
- Switch con pattern matching + when
- Switch con String multi linea
- Uso tradicional de instanceof
- Pattern matching con instanceof
- Validaciones con pattern matching e instanceof
UNIDAD 3 - Diseño orientado a inmutabilidad + Records + Sealed · 19 leccionesUNIDAD 3 - Diseño orientado a inmutabilidad + Records + Sealed
UNIDAD 3 - Diseño orientado a inmutabilidad + Records + Sealed
- Java beans tradicionales
- Oportunidades en los Java beans actuales
- Uso de accesores
- Uso básico de records
- Constructor canónico
- Uso de constructor compacto
- Sobrecarga de constructores en records
- Uso de métodos en los records
- Uso de static en records
- Restricciones en los records
- Records implementando interfaces
- Ejemplo base de interfaces
- Uso de interfaces y records
- Uso de métodos default
- Uso de métodos privados
- Uso básico de sealed interfaces
- Implementaciones sealed
- Uso de non-sealed
- Sealed interfaces + records + pattern matching
UNIDAD 4 - API base del JDK + estilo correcto de uso · 19 leccionesUNIDAD 4 - API base del JDK + estilo correcto de uso
UNIDAD 4 - API base del JDK + estilo correcto de uso
- Antes del try with resources
- De sintaxis tradicional a try with resources
- Custom try with resources
- Mejora en la sintaxis de try with resources
- Uso de of() en collections
- Uso de copyOf
- Streams + colecciones
- Uso de take while en streams
- Uso de Stream iterate
- Uso de Stream.ofNullable()
- Validaciones sin optional
- Uso de Optional of() empty()
- Uso de ofNullable
- Uso de ifPresent
- Errores típicos al manejar fechas
- Uso de LocalDateTime
- Uso de DateTimeFormatter
- Uso de fechas sin consideración de timezones
- Cierre de manejo de tiempo
UNIDAD 5 - Concurrencia · 14 leccionesUNIDAD 5 - Concurrencia
UNIDAD 5 - Concurrencia
- Ejemplo básico de Threads
- Creación de threads usando runnable
- Diferentes formas de crear un runnable
- Bloqueos básicos
- Manejo de múltiples threads sin un Thread pool
- Uso de thread pools
- Cierre de un ExecutorService
- Problemas con los threads tradicionales
- Introducción a Virtual threads
- Creación básica de virtual threads
- Uso de Thread builders
- Uso de sleep con Virtual threads
- Uso de ExecutorService con Virtual threads
- Uso de exception handlers en virtual threads
UNIDAD 6 - Modularidad · 16 leccionesUNIDAD 6 - Modularidad
UNIDAD 6 - Modularidad
- Introducción a modulos en java
- Creación de un proyecto modular con Intellij
- Permitir y restringir visibilidad de paquetes
- Archivo module-info
- Uso de requires static
- Creación de un módulo adicional
- Uso de export to en modularidad
- Uso de requires transitive
- Resolviendo modulo para mobile client
- Definición de un contrato para Servicios en módulos
- Definición de un provider
- Definición de un segundo provider
- Utilizando un provider
- Cambiando de provider y soportando más de uno
- Uso básico de Reflection
- Uso de opens
UNIDAD 7 - HttpClient · 5 leccionesUNIDAD 7 - HttpClient
UNIDAD 7 - HttpClient
- Introducción a HTTPClient
- Uso de HttpURLConnection
- Uso de HTTP client de Java 11
- Manejo de errores
- Uso de peticiones asíncronas
UNIDAD 8 - Cierre del curso · 1 leccionesUNIDAD 8 - Cierre del curso
UNIDAD 8 - Cierre del curso
- Cierre del curso
Tu certificado lo emite la SEP, no solo una plataforma
Al demostrar la competencia recibes un certificado emitido por la Secretaría de Educación Pública a través del Gobierno del Estado de México: un documento oficial que puedes presentar con confianza ante cualquier empleador o institución.
Tu certificado con INEC
- Lo emite la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México
- Documento oficial con folio verificable en línea
- Lo otorga la Universidad Tecnológica Fidel Velázquez
Otras plataformas en línea
- Constancia privada emitida por la misma plataforma
- Solo acredita horas cursadas o asistencia
- Sin respaldo de una autoridad educativa
Tu itinerario, de la inscripción al certificado
- 1
Inscripción con pago único
Pagas $2,800 MXN una sola vez y entras de inmediato al curso.
- 2
Estudias a tu ritmo
8 unidades con videos, lecturas y actividades, disponibles 24/7 durante 12 meses.
- 3
Cuestionarios por unidad
Cuestionarios para comprobar lo aprendido.
- 4
Certificado
Emitido por la SEP a través del Gobierno del Estado de México, con folio verificable.
Un certificado oficial de la SEP
- Emitido por la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México. No es una constancia privada: es un documento oficial, y ese respaldo marca la diferencia frente a otras plataformas en línea.
- Contenido impartido por Alejandro Agapito Bautista.
- Folio y QR verificables para compartirlo con quien te contrate.
Empieza hoy, a tu ritmo
Un solo pago y acceso inmediato al curso completo durante 12 meses.
- 8 unidades · 103 lecciones · 40 h
- 12 meses de acceso
- Certificado emitido por la SEP (Gob. del Estado de México) con folio verificable
Sobre tu inscripción
¿Cómo es el pago?
Un solo pago de $2,800 MXN. No hay mensualidades ni cargos recurrentes.
¿Cuánto tiempo tengo acceso?
12 meses desde tu inscripción, 24/7, para avanzar a tu ritmo.
¿Quién imparte el contenido?
El curso es impartido por Alejandro Agapito Bautista; INEC gestiona tu inscripción, evaluación y certificado.
¿Qué pasa cuando vence mi acceso?
Puedes renovar tu cuenta tú mismo desde la plataforma, sin trámites ni esperas.


