Programación avanzada en C++

C++11 / 14 / 17
Próximamente

Al solicitar la admisión, será necesario que adjunte su CV.

C++11, C++14, y más recientemente, C++17 han supuesto una revolución para muchos desarrolladores de software. Las nuevas revisiones del estándar permiten escribir código más fácil de mantener, al mismo tiempo que contienen sensibles modificaciones que afectan al rendimiento de las aplicaciones.

La mayoría de los compiladores han incorporado ya totalmente C++11 y C++14, así como una buena parte de C++17. Estas novedades de C++, incluidas en el curso, afectan la definición del lenguaje de programación, la nueva biblioteca estándar y el modelo de concurrencia del lenguaje.

Objetivos & Matrícula

El curso abarca las principales novedades que ofrece C++11, C++14 y C++17, y cómo pueden usarse para mejorar el desarrollo de software.

Se estudiará el impacto de estas novedades sobre el rendimiento y la facilidad de mantenimiento del software; los cambios más útiles para desarrolladores de aplicaciones y de bibliotecas; las oportunidades y limitaciones que ofrece C++11 para el desarrollo de aplicaciones concurrentes de forma portable.

Además se obtendrá una visión inicial de los próximos cambios previstos en las revisiones del estándar de C++ (C++20 y especificaciones técnicas).

Dirigido a desarrolladores con experiencia en el desarrollo en C++98/03 interesados en el paso a C++11/14/17. Los asistentes deberían tener experiencia en el uso de las principales características de C++98/03, con especial énfasis en programación genérica, así como en el uso de la biblioteca estándar.

Aquellas personas interesadas en matricularse deberán cumplimentar el formulario de inscripción y enviar su CV a formacion@fund.uc3m.es

Precio del curso: 490€

*Bonificable por Fundae

Al solicitar la admisión, será necesario que adjunte su CV.

Lo que vas a aprender durante el curso

Parte I: Lenguaje

Generalidades y Sistema de tipos Preprocesador / Aserciones en tiempo de compilación / Nuevos tipos primitivos / Puntero nulo / Caracteres Unicode / Inferencia de tipos / Bucles basados en rango / Nuevos enumerados / Nuevas conversiones contextuales / Separadores de dígitos en literales / Literales binarios

Iniciación Sintaxis uniforme de iniciación: Iniciación no uniforme / Iniciación uniforme / Semántica de iniciación uniforme / Variaciones sintácticas / Iniciación y estrechamiento Listas de iniciación: Extensión de iniciación uniforme / Constructores de lista de iniciación / Listas de iniciación como parámetro / Listas de iniciación y sobrecarga / Listas de iniciación y auto

Desarrollo de clases Semántica de movimiento/ Especificación noexcept / Constantes en tiempo de compilación: constexpr / Requisitos relajados para constexpr / Funciones miembro por defecto y eliminadas / Iniciación de miembros no estáticos / Iniciación de miembros agreagados / Constructores delegados y constructores heredados / Operadores explícitos de conversión / Control de herencia: override y final / Atributo [[deprecated]].

Novedades globales Espacios de nombre en línea / Sintaxis sufija de funciones / decltype y declval / Deducción de tipo de retorno y decltype(auto) / Literales definidos por el usuario / Uniones generalizadas / Asignación de memoria optimizada / Liberación de memoria con tamaño

Soporte a programación genérica Expresiones lambda / Capturas con iniciación / Expresiones lambda genéricas / Plantillas externas / Alias de plantilla y alias de tipos / Plantillas de variable / Clases locales y argumentos de plantilla / Plantillas con número variable de argumentos

Profesorado

José Daniel García

Catedrático de Ciencia de la Computación en la Universidad Carlos III de Madrid

Es Catedrático de Ciencia de la Computación en la Universidad Carlos III de Madrid. Ha sido investigador visitante en la Universidad de Modena (Italia) y Profesor Visitante en la Universidad de Texas A&M (USA), donde estuvo trabajando con el Prof. Bjarne Stroustrup, creador del lenguaje C++. Así mismo, durante años ha trabajado con la industria desarrollando proyectos que hacían uso del lenguaje C++ en sectores como la ingeniería civil, tecnología médica, aeroespacial o finanaciero.

Ha liderado la participación de la UC3M en proyectos financiados por la Comisión Europea para la la transformación de aplicaciones C++ para su ejecución en arquitecturas paralelas heterogéneas (REPARA) y la mejora los métodos de desarrollo de software para sistemas multi-core (RePhrase). Así mismo, ha desarrollado proyectos de colaboración entre la UC3M y empresas nacionales para la mejora de software desarrollado en C++ en sectores como las finanzas o la energía.

Es el presidente del comité español de normalización del lenguaje C++ (AEN CTN71/SC22/GT21). Así mismo, desde 2008 representa a España en el comité internacional de normalización de C++ (ISO/IEC JTC1/SC22/WG21), donde ha participado en la elaboración de los estándares C++11, C++14, C++17 y C++20 habiendo realizado contribuciones a los mismos.

Menú

    Déjanos tus datos de contacto para poder facilitarte el programa de estudios del bootcamp Big Data&Cloud

      Déjanos tus datos de contacto para poder facilitarte el programa de estudios del bootcamp Devops&IaC

        Déjanos tus datos de contacto para poder facilitarte el programa de estudios del bootcamp Data Science

        Resolvemos tus dudas

        Contacto

        Ponte en contacto con nosotros para resolver cualquier duda que te pueda surgir respecto a nuestra formación

        91 624 40 66 ó
        91 624 40 69

        ¡Llámanos!

        ¿Necesitas ayuda?




          He leído y acepto la Política de Privacidad.

          Resolvemos tus dudas

          Contacto

          Ponte en contacto con nosotros para resolver cualquier duda que te pueda surgir respecto a nuestra formación

          91 624 40 66 ó
          91 624 40 69

          ¡Llámanos!

          ¿Necesitas ayuda?




            He leído y acepto la Política de Privacidad.