> Formations > Technologies numériques > Développement logiciel > C, C++ > Formation Programmation Objet en C++
Formation incontournable Formation référencée dans le catalogue Clé en main d’un OPCO

Formation : Programmation Objet en C++

Programmation Objet en C++

Télécharger le programme Partager cette formation


Ce cours intensif a deux objectifs : initier les participants aux méthodes et réflexes de la programmation par objets ; leur apporter une maîtrise opérationnelle complète du langage C++. Il est le fruit d'une longue expérience en matière de développement en C++ et est construit selon une pédagogie rigoureuse reposant sur des travaux pratiques nombreux et progressifs. Le formateur présentera, durant ces 5 jours, les évolutions des normes de C++98 à C++20.


Inter
Intra
Sur mesure

Cours pratique en présentiel ou en classe à distance

Réf. C++
Prix : 2970 € H.T.
  5j - 35h00




Ce cours intensif a deux objectifs : initier les participants aux méthodes et réflexes de la programmation par objets ; leur apporter une maîtrise opérationnelle complète du langage C++. Il est le fruit d'une longue expérience en matière de développement en C++ et est construit selon une pédagogie rigoureuse reposant sur des travaux pratiques nombreux et progressifs. Le formateur présentera, durant ces 5 jours, les évolutions des normes de C++98 à C++20.

Objectifs pédagogiques
À l’issue de la formation, le participant sera en mesure de :
  • Maîtriser la syntaxe du langage C++
  • Mettre en œuvre les concepts de la Conception Orientée Objet
  • Utiliser les outils de développement associés au langage C++
  • Maîtriser les ajouts majeurs de la norme C++ 11

Public concerné
Développeurs, ingénieurs et chefs de projets proches du développement.

Prérequis
Bonnes connaissances d'un langage de programmation de type C, Java, Python, C#, VB.NET ou PHP.
Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisant  ce test.

Programme de la formation

La syntaxe du C++ (différences entre C et C++)

  • Données : définition, initialisation, types de données.
  • Expressions : notion de référence, mécanismes de cast.
  • Opérateurs (: :, new, delete).
  • Fonctions (passage de paramètres et valeur de retour par référence, valeurs par défaut, inlining, surcharge).
  • Utilisation du code C dans un programme C++.
  • Les références (arguments et valeurs de retour).
  • Les types constants.
  • Les espaces de nommage.
  • Le typage "automatique" avec le mot-clé auto (C++ 11).
Travaux pratiques
Prise en main de l'environnement de développement et programmation d'un programme simple.

Approche Orientée Objet

  • Les principes généraux des techniques Objet.
  • C++ et la programmation Objet.
  • Une introduction aux méthodologies orientées Objet.
  • Une introduction aux modèles et à la notation UML (modèle statique, dynamique, modèle de coopération, scénario).
Travaux pratiques
Application des concepts à une étude de cas qui sera l'un des fils directeurs des exercices suivants.

Les classes et les objets C++

  • Les aspects syntaxiques : les champs, les méthodes, les constructeurs.
  • Le contrôle d'accès.
  • L'autoréférence.
  • Les champs et méthodes statiques.
  • Les fonctions.
  • Les méthodes et les classes Friend.
  • La création dynamique des tableaux d'objets.
  • Les aspects méthodologiques : la conception des classes.
  • Les constructeurs de copie et de déplacement (C++11).
  • La délégation de constructeurs (C++ 11).
  • Introduction aux problématiques de gestion mémoire (pile, tas, ramasse-miettes...).
Travaux pratiques
La programmation de l'étude de cas. La conception et la construction d'une hiérarchie de classes et d'interfaces.

Dérivation et héritage

  • Principe de la dérivation.
  • Les aspects syntaxiques : la définition des classes dérivées, les constructeurs.
  • Le contrôle d'accès.
  • La mise en œuvre du polymorphisme : les fonctions virtuelles.
  • La réutilisation de code : les classes abstraites.
  • Les interfaces.
  • La dérivation multiple.
  • Les aspects sémantiques et méthodologiques : la factorisation du code.
Travaux pratiques
La mise en place du polymorphisme dans l'étude de cas.

Les exceptions

  • Les aspects syntaxiques : les blocs de try, la génération des exceptions.
  • Les aspects méthodologiques : la construction d'une hiérarchie d'exception, l'utilisation des exceptions.
Travaux pratiques
L'introduction des exceptions dans l'étude de cas.

La surcharge des opérateurs

  • Principe de la surcharge.
  • Surcharge des opérateurs binaires.
  • Surcharge particulière : l'opérateur indice, fonction, conversion.
  • Surcharge des opérateurs de gestion mémoire.
  • Surcharge des opérateurs '<<' et '>>'.
Travaux pratiques
La surcharge de quelques opérateurs simples.

Les modèles

  • Modèle de classe. Principes et mécanismes généraux. Surcharge des modèles et redéfinition de méthodes.
  • Modèle de fonction. Principes et mécanismes généraux. Surcharge des modèles.
  • Modèles et surcharge des opérateurs.
  • Les modèles et les mécanismes de dérivation.
  • Les améliorations proposées par C++ 11.
Travaux pratiques
Exercices sur les modèles.

Les I/O et aperçu sur la STL

  • Les I/O.
  • Le principe des streams et la hiérarchie des classes d'entrée/sortie.
  • Description de quelques classes d'entrées/sorties.
  • Aperçu sur la STL.
  • Objectifs et principes.
  • Descriptions de quelques modèles et classes.
  • Les conteneurs, les itérateurs, la boucle basée sur un intervalle (C++ 11).

Conclusion

  • Cycle de vie du logiciel : test, intégration, méthode de mise en production.
  • Interaction avec les autres environnements.
  • Analyse critique du C++.
  • Evolution du C++.


Modalités pratiques
Travaux pratiques
Mise à disposition de stations de travail disposant des langages Visual C++ (sous Windows) et gcc (sous Unix). Les TP ont été conçus pour illustrer tous les éléments du langage et pour systématiquement mettre en oeuvre les concepts de la conception orientée objet.
Méthodes pédagogiques;
Tous les exercices comportent une phase d'analyse/conception suivie d'une phase de programmation.

Modalités d'évaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de QCM, mises en situation, travaux pratiques…
Le participant complète également un test de positionnement en amont et en aval pour valider les compétences acquises.

Parcours certifiants associés
Pour aller plus loin et renforcer votre employabilité, découvrez les parcours certifiants qui contiennent cette formation :

Avis clients
4,5 / 5
Les avis clients sont issus des évaluations de fin de formation. La note est calculée à partir de l’ensemble des évaluations datant de moins de 12 mois. Seules celles avec un commentaire textuel sont affichées.
MATHIEU S.
09/09/24
5 / 5

Tout à fait adapté au besoin.Un bout de code permettant de tester nos développements à chaque étape du TP pourrait aider (façon "test driven development").
JULIEN C.
09/09/24
5 / 5

Grâce aux qualités humaines, pédagogiques et techniques de Laurent, cette formation propose un contenu vraiment intéressant, complet et pertinent. Le sujet abordé pourrait nécessité des heures supplémentaires, mais le contenu proposé respecte la promesse de la formation.
INÈS D.
09/09/24
5 / 5

- J’ai bien aimé le contenu de la formation, il y avait exactement les infos nécessaires pas trop de détails qui peuvent rendre la formation ennuyantes et trop bourrage de cerveaux. - Au niveau de la pédagogie, c’était très bien étudié.




Dates et lieux
Sélectionnez votre lieu ou optez pour la classe à distance puis choisissez votre date.
Classe à distance