Accueil > Nos Formations > Développement logiciel > Animation et réalité virtuelle > C, C++ > C++, programmation avancée

C++, programmation avancée

5 (1 avis)

Maîtrisez les concepts avancés du C++ : gestion mémoire, move semantics, exceptions, POO, programmation fonctionnelle, templates, STL, multithreading et pratiques DevOps.

Description Objectifs Récapitulatif Programme détaillé

Description

Ce programme de formation s'adresse aux développeurs souhaitant approfondir leurs compétences en C++. Il aborde des concepts avancés tels que la gestion de la mémoire, les techniques de move semantics, ainsi que la programmation orientée objet et fonctionnelle. Les participants apprendront à optimiser leurs structures de données, à gérer les exceptions de manière robuste et à utiliser efficacement les templates et la librairie standard. De plus, des modules sur le multithreading, la programmation concurrente et les pratiques DevOps sont inclus, permettant ainsi une maîtrise complète des outils modernes de développement.

Objectifs

  • Maîtriser les mécanismes avancés de C++
  • Appréhender et mettre en oeuvre les techniques des nouvelles normes C++
  • Savoir pratiquer l'approche TDD (Test Driven Development) en C++
  • Découvrir et maîtriser la programmation parallèle et synchronisée

Récapitulatif

Public

Développeurs C++

Prérequis

Avoir de bonnes bases en programmation C++

Ou avoir suivi la formation C++, programmation Objet

Méthodes et modalités pédagogiques

Formation réalisée en Présentiel, Distanciel ou Dual-Learning selon la formule retenue.

Moyens et supports pédagogiques

Mise à disposition d'un poste de travail sur nos formations en Présentiel.
Mise à disposition de nos environnements de visio sur nos formations en Distanciel
Remise d'une documentation pédagogique numérique pendant la formation
La formation est constituée d'apports théoriques, d'exercices pratiques et de réflexions
Dans le cas d'une formation sur site Entreprise, le client s'engage à avoir toutes les ressources pédagogiques nécessaires (salle, équipements, accès internet, TV ou Paperboard...) au bon déroulement de l'action de formation conformément aux prérequis indiqués dans le programme de formation

Modalités de suivi et d'évaluations

Auto-positionnement des stagiaires avant la formation

Émargement des stagiaires et formateur par 1/2 journée

Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires

Auto-évaluation des acquis de la formation par les stagiaires

Questionnaire de satisfaction à chaud et à froid à l'issue de la formation

Programme détaillé

Évolutions du langage

  • Concepts modernes du langage
  • Gestion de la mémoire et alignement
  • Inférence de types et déduction automatique
  • Nouveaux spécificateurs de classe et contrôle de l'héritage
  • Expressions constantes et évaluation à la compilation
  • Gestion avancée du temps et espace de noms chrono
  • Comparaisons avancées et opérateurs dédiés

 

Move semantics et gestion efficace des ressources

  • Différence entre copie et déplacement
  • std::move et références RValue
  • Constructeurs de déplacement et opérateurs d'affectation par déplacement
  • Interaction entre héritage et move semantics
  • Optimisation des structures de données avec swap et move
  • Mauvaises pratiques et pièges à éviter

 

Gestion avancée des ressources

  • Resource Acquisition Is Initialization (RAII)
  • Gestion de la mémoire avec unique_ptr, shared_ptr et weak_ptr
  • Stratégies avancées de gestion mémoire et custom deleter
  • Optimisation et allocation mémoire efficace

 

Gestion avancée des exceptions

  • Hiérarchisation et conception des exceptions
  • Gestion avancée des erreurs et robustesse du code
  • Garanties de sécurité des exceptions
  • Usage avancé de noexcept et impacts sur l'optimisation

 

Héritage et programmation orientée objet

  • Gestion avancée de l'héritage : privé, protégé, multiple
  • Héritage en diamant et héritage virtuel
  • Résolution des ambiguïtés et dominance
  • Interfaces et polymorphisme efficace

 

Programmation fonctionnelle en C++

  • Utilisation avancée des lambdas et inline functions
  • Gestion des abonnements et callbacks
  • std::function, std::mem_fn et placeholders
  • Perfect forwarding et std::forward
  • decltype et inférence avancée des types

 

Templates, concepts et métaprogrammation

  • Paramétrage avancé des templates
  • SFINAE (Substitution Failure Is Not An Error) et pattern matching
  • Variadic templates et passage d'arguments variable
  • Métaprogrammation et Curiously Recursive Template Pattern (CRTP)
  • Assertions statiques avec static_assert
  • Extensions avancées avec friend et typage générique
  • Contrats et concepts

 

Utilisation avancée de la librairie standard

  • Collections modernes (std::array, unordered_map, unordered_set)
  • Structures avancées (tuple, listes simplement chaînées)
  • Itérateurs, adaptateurs d'itérateurs, Range
  • Algorithmes ensemblistes et traitements optimisés

 

Multithreading et programmation concurrente

  • Gestion avancée des threads et synchronisation
  • std::call_once, this_thread, async et futures
  • Mutexes, variables atomiques et gestion fine de la concurrence
  • Stratégies de synchronisation et meilleures pratiques

 

DevOps

  • TDD, approche et mise en place des tests unitaires
  • Gestion des dépendances et automatisation des tests
  • Frameworks et bonnes pratiques
  • Profiling et performances
  • Automatisation des Build
  • Développement Cross-Platform
C++, programmation avancée
Inter
Intra
3 jours (21 heures)
Référence :
MOD_2024188
Formation Inter
1950 € HT
3 jours (21 heures)
Référence :
MOD_2024188
Formation Intra

Trouvez la formation qui
répond à vos enjeux

Avis

  • Aymane K.
    Le 22/10/2025
    5

    Points forts : Formation très complète et riche. traitent plusieurs cas d'étude de manière très active. la formateur à su cibler les besoin des stagiaire toute en ramenant énormément de valeur ajouté. très bonne formation . Je recommande.

    Axes d'amélioration: Rien a signaler.

    Souhaits pour la formation: pas de souhait spécifique pour le moment

    Formation : C++, programmation avancée

Nos autres formations

Vous aimerez aussi

Être rappelé

Page Formation | Formulaire de contact

Les données saisies dans ce formulaire sont conservées par nos soins afin de pouvoir répondre au mieux à votre demande. Nous accordons de l’importance à la gestion de vos données, en savoir plus sur notre démarche Données Personnelles.

Demander un devis

Page Formation | Formulaire de devis

Les données saisies dans ce formulaire sont conservées par nos soins afin de pouvoir répondre au mieux à votre demande. Nous accordons de l’importance à la gestion de vos données, en savoir plus sur notre démarche Données Personnelles.

Je m'inscris

Page Formation | Formulaire d'inscription

Les données saisies dans ce formulaire sont conservées par nos soins afin de pouvoir répondre au mieux à votre demande. Nous accordons de l’importance à la gestion de vos données, en savoir plus sur notre démarche Données Personnelles.