01 56 59 33 00
united-kingdom

C++ Niveau 2

4-LC-CPAV
4-LC-CPAV
Durée : 4 jour(s)
soit 28 heures
Prix : 2400 €
Programmes
RAPPELS
  • Classes d’allocation mémoire.
  • Construction, initialisation, embarquement d’objets.
  • Les fuites mémoire.
  • Constance, le mot-clé mutable, Lazy Computation.
  • Amitié (friendship) C++ et contrôle d’accès.
  • Destruction virtuelle.
  • Stratégie de gestion des exceptions.
  • Les espaces de nommage (namespace).
LES NOUVEAUTÉS LANGAGE DE C++11
  • nullptr et autres littéraux.
  • Les directives =delete, =default.
  • Délégation de constructeurs.
  • Les énumérations « type safe ».
  • Le mot-clé auto et boucle sur un intervalle.
  • Référence rvalue et impact sur la forme normale des classes C++.
  • Les lambda expressions.
GESTION DES OPÉRATEURS
  • Opérateurs binaires et unaires.
  • L’opérateur d’indirection, cas d’usage.
  • L’opérateur de référencement.
  • Les opérateurs d’incrémentation/décrémentation préfixés et post-fixés.
  • Les autres opérateurs : comparaison, affectation…
  • La surcharge de l’opérateur [], des opérateurs d’insertion (<>).
  • Les foncteurs et la surcharge de l’opérateur (), avantage par rapport aux fonctions.
CONVERSION ET RTTI
  • Opérateurs de conversion. Constructions implicites, le mot-clé explicit.
  • Les opérateurs de casting const_cast, static_cast, reinterpret_cast.
  • Conversion dynamique et Runtime Type Information.
  • L’opérateur typeid, les exceptions liées.
  • La classe type_info.
  • Contrôle du « downcasting » à l’aide de l’opérateur dynamic_cast.
LA GÉNÉRICITÉ
  • Introduction aux patrons de classe. Généricité et préprocesseur.
  • Fonction générique. Classe générique. Composition générique. Généralisation générique.
  • Spécialisation partielle et totale.
  • Introduction à la méta-programmation.
  • La généricité, principe fédérateur des librairies STL et Boost.
LA STL (STANDARD TEMPLATE LIBRARY)
  • Composants de la STL : types complémentaires, conteneurs, algorithmes, itérateurs, objets fonctions, les adaptateurs.
  • Les chaînes de caractères STL, la classe template basic_string et ses spécialisations.
  • Les conteneurs séquentiels et associatifs : définition, rôle et critères de choix.
  • Les allocateurs et la gestion de la mémoire des conteneurs.
  • Les méthodes d’insertion, de suppression, d’itération et d’accès aux principaux conteneurs : Vector, List, Set, Stack…
  • Le concept d’itérateur. Parcours d’un conteneur.
  • Les différents groupes d’algorithmes STL : non mutants, mutants, de tri et de fusion, numériques.
  • Manipulation de conteneurs (manipulation, recherche de valeurs…).
  • Paramétrer les algorithmes génériques par des objets « fonction ».
  • Les « adapteurs » et la modification du comportement d’un composant.
  • La STL et les traitements sur les flux (fichiers, mémoire…).
  • Principe du RAII : les pointeurs automatiques et la classe auto_ptr.
  • Les exceptions standard de la STL.
LES NOUVEAUTÉS C++11 DE LA LIBRAIRIE STANDARD
  • Evolution historique : Boost –> TR1 –> C++11.
  • Les nouveaux conteneurs : array, forward_list, unordered_set, unordered_map.
  • La classe tuple.
  • Les pointeurs intelligents (smart pointer) : shared_ptr, weak_ptr, unique_ptr.
  • Les nouveaux foncteurs et binders.
  • Introduction à la gestion des threads.
  • Les expressions régulières.
BOOST ET SES PRINCIPES
  • La Pointer Container Library (destruction des données pointées d’un conteneur).
  • Les structures de données boost::any et boost::variant.
  • Programmation événementielle (connexions et signaux).
  • Gestion des processus, mécanismes de communication interprocessus et mémoire partagée.
UTILISATION AVANCÉE DE L’HÉRITAGE
  • Héritage versus embarquement. Héritage privé. Héritage protégé.
  • Exportation de membres cachés avec la Clause Using.
  • Héritage multiple et gestion des collisions de membres.
  • Héritage en diamant. Héritage virtuel et dynamic_cast.
  • Principes de conception : substitution de Liskov, principe d’ouverture/fermeture, inversion des dépendances.
  • Règles d’implémentation des interfaces en C++.
Objectifs
Grace à cette formation vous pourrez
Consolider vos connaissances dans le développement C++
Disposer de connaissance pour rendre efficients vos développements
Prérequis
Il est nécessaire de
Disposer de bonnes connaissances en développement C++,.
Profil des participants
Concepteurs et développeurs d’applications en C++, chefs de projets, architectes logiciels.
Dates des prochaines sessions :
Du 14 au 17 mai 2024
Du 26 au 29 novembre 2024
Grace à cette formation vous pourrez
Consolider vos connaissances dans le développement C++
Disposer de connaissance pour rendre efficients vos développements
RAPPELS
  • Classes d’allocation mémoire.
  • Construction, initialisation, embarquement d’objets.
  • Les fuites mémoire.
  • Constance, le mot-clé mutable, Lazy Computation.
  • Amitié (friendship) C++ et contrôle d’accès.
  • Destruction virtuelle.
  • Stratégie de gestion des exceptions.
  • Les espaces de nommage (namespace).
LES NOUVEAUTÉS LANGAGE DE C++11
  • nullptr et autres littéraux.
  • Les directives =delete, =default.
  • Délégation de constructeurs.
  • Les énumérations « type safe ».
  • Le mot-clé auto et boucle sur un intervalle.
  • Référence rvalue et impact sur la forme normale des classes C++.
  • Les lambda expressions.
GESTION DES OPÉRATEURS
  • Opérateurs binaires et unaires.
  • L’opérateur d’indirection, cas d’usage.
  • L’opérateur de référencement.
  • Les opérateurs d’incrémentation/décrémentation préfixés et post-fixés.
  • Les autres opérateurs : comparaison, affectation…
  • La surcharge de l’opérateur [], des opérateurs d’insertion (<>).
  • Les foncteurs et la surcharge de l’opérateur (), avantage par rapport aux fonctions.
CONVERSION ET RTTI
  • Opérateurs de conversion. Constructions implicites, le mot-clé explicit.
  • Les opérateurs de casting const_cast, static_cast, reinterpret_cast.
  • Conversion dynamique et Runtime Type Information.
  • L’opérateur typeid, les exceptions liées.
  • La classe type_info.
  • Contrôle du « downcasting » à l’aide de l’opérateur dynamic_cast.
LA GÉNÉRICITÉ
  • Introduction aux patrons de classe. Généricité et préprocesseur.
  • Fonction générique. Classe générique. Composition générique. Généralisation générique.
  • Spécialisation partielle et totale.
  • Introduction à la méta-programmation.
  • La généricité, principe fédérateur des librairies STL et Boost.
LA STL (STANDARD TEMPLATE LIBRARY)
  • Composants de la STL : types complémentaires, conteneurs, algorithmes, itérateurs, objets fonctions, les adaptateurs.
  • Les chaînes de caractères STL, la classe template basic_string et ses spécialisations.
  • Les conteneurs séquentiels et associatifs : définition, rôle et critères de choix.
  • Les allocateurs et la gestion de la mémoire des conteneurs.
  • Les méthodes d’insertion, de suppression, d’itération et d’accès aux principaux conteneurs : Vector, List, Set, Stack…
  • Le concept d’itérateur. Parcours d’un conteneur.
  • Les différents groupes d’algorithmes STL : non mutants, mutants, de tri et de fusion, numériques.
  • Manipulation de conteneurs (manipulation, recherche de valeurs…).
  • Paramétrer les algorithmes génériques par des objets « fonction ».
  • Les « adapteurs » et la modification du comportement d’un composant.
  • La STL et les traitements sur les flux (fichiers, mémoire…).
  • Principe du RAII : les pointeurs automatiques et la classe auto_ptr.
  • Les exceptions standard de la STL.
LES NOUVEAUTÉS C++11 DE LA LIBRAIRIE STANDARD
  • Evolution historique : Boost –> TR1 –> C++11.
  • Les nouveaux conteneurs : array, forward_list, unordered_set, unordered_map.
  • La classe tuple.
  • Les pointeurs intelligents (smart pointer) : shared_ptr, weak_ptr, unique_ptr.
  • Les nouveaux foncteurs et binders.
  • Introduction à la gestion des threads.
  • Les expressions régulières.
BOOST ET SES PRINCIPES
  • La Pointer Container Library (destruction des données pointées d’un conteneur).
  • Les structures de données boost::any et boost::variant.
  • Programmation événementielle (connexions et signaux).
  • Gestion des processus, mécanismes de communication interprocessus et mémoire partagée.
UTILISATION AVANCÉE DE L’HÉRITAGE
  • Héritage versus embarquement. Héritage privé. Héritage protégé.
  • Exportation de membres cachés avec la Clause Using.
  • Héritage multiple et gestion des collisions de membres.
  • Héritage en diamant. Héritage virtuel et dynamic_cast.
  • Principes de conception : substitution de Liskov, principe d’ouverture/fermeture, inversion des dépendances.
  • Règles d’implémentation des interfaces en C++.
Concepteurs et développeurs d’applications en C++, chefs de projets, architectes logiciels.
Il est nécessaire de
Disposer de bonnes connaissances en développement C++,.

Formateur expert dans le domaine

  • 1 ordinateur par stagiaire, 1 support de cours par stagiaire (version papier ou numérique), 1 stylo et un bloc-notes par stagiaire
  • Vidéoprojecteur et tableau blanc
  • Feuille d’émargement à la demi-journée, questionnaire de satisfaction stagiaire, évaluations des acquis tout au long de la formation, attestation de stage
  • Éligible au CPF avec passage de certification TOSA ou PCIE (en option)

En amont de la formation

  • Audit par téléphone par nos commerciaux et formateurs
  • Tests d’auto-positionnement avant l’entrée en formation par le biais de questionnaire

Au cours de la formation

  • Exercices pratiques et mises en situation professionnelle pour valider la compréhension de chaque notion abordée dans le programme de cours.

En fin de formation

  • Validation des acquis par le formateur ou via un questionnaire renseigné par les stagiaires
  • Evaluation qualitative par les participants à l’issue de la formation via un questionnaire de satisfaction accessible en ligne
  • Une attestation de fin de formation reprenant les objectifs de formation est également remise aux stagiaires puis signée par le formateur

Modalités d’inscription

  • Inscription possible jusqu’à la veille de la formation, sous réserve de places disponibles, en nous contactant au 01 56 59 33 00 ou par mail formation@sii.fr

Modalités particulières

  • Nos formations sont accessibles aux personnes en situation de handicap. Renseignez-vous auprès de notre référente handicap au 01 56 59 33 00 ou par mail pedagogie@sii.fr
Du 14 au 17 mai 2024
Du 26 au 29 novembre 2024

Réservez votre formation

Que cherchez-vous ?