Programme Langage C++ expert, les avancées du langage (de C++ 11 à 20)

Participants :
Développeurs C++ souhaitant connaître les nouveautés définies par le standard C++11.

Durée : 3 jours - 21 heures
Tarif : Nous contacter pour une formation INTER – INTRA ou en COURS PARTICULIER

La formation est délivrée en présentiel ou distanciel (e-learning, classe virtuelle, présentiel et à distance). Le formateur alterne entre méthodes démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation). La validation des acquis peut se faire via des études de cas, des quiz et/ou une certification.

Cette formation est animée par un consultant-formateur dont les compétences techniques, professionnelles et pédagogiques ont été validées par des diplômes et/ou testées et approuvées par l’éditeur et/ou par Audit Conseil Formation.

Dates des formations
Du 06/05/2024 au 08/05/2024Demander un devis
Du 21/10/2024 au 23/10/2024Demander un devis
Du 16/12/2024 au 18/12/2024Demander un devis
Logo ACF

Demande de devis

Formation
Cadre
Pôle Emploi
Nom/Prénom
Société
E-mail
Téléphone
Période
Evaluer mon niveau

Les objectifs

Appréhender
Appréhender
les nouveautés et les améliorations du langage C++
Utiliser
Utiliser
les lambda expressions
Améliorer
Améliorer
ses performances avec la sémantique de déplacement
Maîtriser
Maîtriser
les allocations-destructions d'objets avec les smart pointers

pré-requis

Bonnes connaissances du langage C++. Une expérience pratique de la programmation avec ce langage est recommandée.

Moyens pédagogiques, techniques et d'encadrement

  • 1 poste de travail complet par personne
  • De nombreux exercices d'application
  • Mise en place d'ateliers pratiques
  • Remise d'un support de cours
  • Remise d'une attestation de stage

Modalités d'évaluation des acquis

- Evaluation des besoins et objectifs en pré et post formation
- Evaluation technique des connaissances en pré et post formation
- Evaluation générale du stage

Accessibilité handicapés

  • Au centre d’affaires ELITE partenaire d’ACF à 20 m.
  • Guide d’accessibilité à l’accueil.

Le Programme

L'avènement de C++11

Les différentes normes C++98, C++03, C++11=, C++14, C++17, C++20.
Les nouveautés de C++11 et les objectifs de cette norme. Le devenir de Boost, STL.
La question de la compatibilité des codes anciens.
La disponibilité des outils de développement (compilateurs, débogueurs, IDE...).

Les améliorations du langage

Les enum fortement typées.
Le mot-clé auto et decltype pour simplifier le typage.
La boucle basée sur un intervalle.
Constexpr pour une évaluation à la compilation.
Templates variadiques, concepts de C++20 soucoupe...
Coroutines de C++20.
Les modules de C++20.

Les modifications au niveau des classes

La délégation de constructeurs, les contraintes liées à l'héritage.
La nouvelle sémantique du déplacement et le constructeur par déplacement (move constructor).
Les directives override, final =delete, =default.
Notion de module C++20

La programmation fonctionnelle avec les expressions lambda

Déclaration, typage, implémentation et utilisation.
L'intérêt d'auto avec les lambda-expressions.
La gestion des fermetures (closures), avec capture par valeur ou par référence des variables liées au contexte.

L'utilisation des threads

Déclaration et exécution d'un thread. Attente de fin d'exécution avec join().
La gestion des données locales à un thread.
Récupérer un résultat avec future<> et async().
Choisir parmi les différents verrous de la STL.

Autres nouveautés de la bibliothèque standard

Ranges avec std ::view pour évaluations à la volée de C++20.
La gestion du temps avec le namespace chrono.
Le nouveau conteneur tuple.
Conteneurs unordered_set, unordered_map à base de hachage.
Formatage de string avec C++20.

La gestion mémoire et les conteneurs

Les smart pointers : shared_ptr, weak_ptr, unique_ptr. Usage conjoint avec la STL.