Programa de formación: «C++ is not C.cpp»

La asistencia a este curso requiere inscripción previa a través de este formulario de asistencia

Descripción curso

C++ es un lenguaje de programación poderoso y versátil que permite crear desde aplicaciones en tiempo real, aplicaciones de escritorio o sistemas operativos. Sin embargo, también es un lenguaje complejo que puede llegar a ser intimidante para aquellos que se inician en él, incluso si hay experiencia previa en otros lenguajes como C, Java o Python. Es una práctica habitual pensar que, sabiendo programar en C, la transición a C++ es inmediata. Si bien es cierto que facilita la comprensión de ciertos conceptos, C++ es un lenguaje de programación por derecho propio y portar las costumbres de C a C++ es generalmente considerado una mala práctica.

El objetivo de este curso es introducir las características principales de C++, prestando especial atención a los últimos estándares, para aquella gente que quiera empezar a utilizarlo, para aquella que está dando sus primeros pasos y para presentar las últimas novedades y curiosidades a las personas que ya tienen cierta soltura. En el curso trataremos los temas más básicos, desde el primer e imprescindible "Hola mundo!", hasta las últimas novedades introducidas en el lenguaje como los "concepts", pasando por las utilidades de la librería estándar o los "smart pointers". Y lo más importante: se aprenderá a no escribir código C en un fichero con extensión "cpp".

Programa

Sesión 1: Introducción, "Hello world!" y objetos.

  • Breve introducción al lenguaje, desde el imprescindible "Hello World" hasta los tipos de datos más comunes y los objetos en C++.

Sesión 2: La librería estándar.

  • Repaso de las utilidades, estructuras de datos y algoritmos más útiles incorporados en la librería estándar de C++.

Sesión 3: Otras herramientas útiles y jugar.

  • Introducción a otras herramientas útiles en el desarrollo en C++, como librerías externas y static analysis tools. También se resolverán dudas que puedan surgir de sesiones anteriores.

Sobre Rubén Laso Rodríguez

Rubén Laso Rodríguez es graduado en Ingeniería Informática por la USC en 2017, y obtuvo su máster en Matemática Industrial en 2019. Desde 2017 trabaja en el CiTIUS en temas relacionados con la programación de altas prestaciones y la arquitectura de computadores. Su investigación se centra en la mejora de rendimiento y eficiencia energética en arquitecturas NUMA (tema principal de su tesis), programación en sistemas heterogéneos y optimización y paralelización de código.

Se recomienda acudir con un ordenador o herramienta de trabajo similar para poder seguir correctamente el curso y las actividades prácticas.