Microcredencial Universitaria Programación genérica en C++ moderno
- Inicio
- Microcredenciales Universitarias
- Microcredencial Universitaria Programación genérica en C++ moderno
- Inicio
- Director: José Daniel García Sánchez (UC3M)
- Idioma: Español
- Modalidad: Presencial
- Precio: 300€
- Fechas: Del 1 al 5 y del 15 al 19 de junio de 2026. .
- Duración: 20 horas lectivas / 2 ECTS
- Plazo de Admisión: Hasta el 28 de mayo de 2026
- Campus de impartición: Leganés
- Plazas: 30
- Becas: 10 Becas Banco Santander
- Departamento:Informática
¿Te has preguntado alguna vez cómo se diseñan las bibliotecas de alto rendimiento que utilizas a diario? ¿Quieres escribir código que no solo sea elegante y reutilizable, sino que además se ejecute de forma muy eficiente? Bienvenido al nivel avanzado de C++.
En este curso profundizaremos en el corazón de la potencia de C++: la programación genérica. Aprenderás a dominar las plantillas (templates) no solo para evitar la duplicación de código, sino para elevar tu lógica de programación a un nivel de abstracción superior.
Además, daremos el salto hacia el paradigma más moderno del lenguaje: los rangos y las vistas. Aprenderás a tratar las colecciones de datos como flujos de información, permitiéndote encadenar operaciones de filtrado, transformación y búsqueda de forma declarativa. Así, lograrás un código mucho más expresivo y legible sin sacrificar el rendimiento, al eliminar las copias innecesarias de memoria. - PROGRAMA
1. Plantillas de función y de clase
Profundizaremos en el sistema de plantillas como pilar de la reutilización de código. Veremos cómo el compilador genera código a medida mediante la instanciación y cómo gestionar la especialización de plantillas (total y parcial) para optimizar comportamientos según el tipo de dato.
2. Restricciones y Conceptos (Concepts)
Estudiaremos el mecanismo de conceptos introducido en C++20 y perfeccionado en C++23. Aprenderás a definir requisitos semánticos para los tipos, lo que permite escribir código genérico mucho más robusto y con errores de compilación claros.
3. Plantillas variádicas y usos avanzados
Aprenderemos a diseñar componentes que acepten un número indeterminado de parámetros de diferentes tipos. Veremos las expresiones de plegado (fold expressions) para procesar estas listas de parámetros de forma elegante y eficiente. También veremos algunos usos avanzados de plantillas.
4. Programación en tiempo de compilaciónExploraremos cómo mover el trabajo del tiempo de ejecución al tiempo de compilación. Dominaremos el uso de constexpr y consteval para cálculos inmediatos, y utilizaremos if constexpr para realizar introspección de tipos y toma de decisiones lógica que el compilador resolverá antes de generar el binario final.
5. Entidades invocables y tipos de vocabularioAnalizaremos la abstracción de funciones mediante std::function y las mejoras en expresiones lambda. También veremos los tipos de vocabulario como std::optional, std::variant y std::any.
6. Metaprogramación y uso avanzadoFinalizaremos aplicando todo lo anterior a la biblioteca de rangos. Aprenderás a utilizar vistas (views) para filtrar y transformar datos de forma perezosa (lazy evaluation), evitando asignaciones de memoria innecesarias y permitiendo una sintaxis declarativa basada en tuberías (pipes), culminando en un estilo de programación moderno y altamente eficiente.
- PROFESORADO
Profesorado UC3M
- José Daniel García Sánchez
Catedrático de Universidad. Departamento de Informática
Comité ISO C++
- Carlos Linares López
Profesor Titular de Universidad. Departamento de Informática
- José Daniel García Sánchez
- ADMISIÓN
Dirigido a:
No requiere titulación universitaria.
INSCRIPCIÓN, MATRÍCULA Y PAGOPRIMER PASO - REGISTRO
- Si eres o has sido estudiante de la UC3M no necesitas registrarte
- Si no recuerdas tu clave puedes crear una nueva
SEGUNDO PASO - INSCRIPCIÓN, MATRÍCULA Y PAGO
Accede con tu usuario y clave
Para cualquier consulta o incidencia relacionada con la solicitud de admisión ponte en contacto con admisiontp@postgrado.uc3m.es
- INFORMACIÓN PRÁCTICA
Método de evaluación individualizada
Evaluación continua mediante tests para cada bloque temático Desarrollo de ejercicios de programación para evaluar las habilidades prácticas adquiridas.
Fechas de imparticiónDel 1 al 5 y del 15 al 19 de junio de 2026.
Horario- 1/6/2026: 16:00 a 18:00
- 2/6/2026: 16:00 a 18:00
- 3/6/2026: 16:00 a 18:00
- 4/6/2026: 16:00 a 18:00
- 5/6/2026: 16:00 a 18:00
- 15/6/2026: 16:00 a 18:00
- 16/6/2026: 16:00 a 18:00
- 17/6/2026: 16:00 a 18:00
- 18/6/2026: 16:00 a 18:00
- 19/6/2026: 16:00 a 18:00
- BECAS SANTANDER
Becas Santander Microcredenciales 2026
- Plazo: desde el día 27 de enero hasta el 9 de abril (ambos incluidos)
- Número de ayudas: 10
- Importe: 300€
- Resolución: 12 de mayo de 2026

