EDITIONS ENI : 04. C++, programmation Objet
Organisme
44812 ST HERBLAIN CEDEXVoir toutes ses formationsAutres organismes proposant cette formation
Durée
Modalités
- Classe virtuelle
- Présentiel
Par les stagiaires, qui en début et fin de formation, réalisent une auto-évaluation de leurs connaissances et compétences en lien avec les objectifs de la formation.
Prix
Public
Développeurs, ingénieurs, chefs de projets proches du développement.
Pré-requis
Connaître les principes de la programmation orientée objet et disposer d’une expérience d’un langage de programmation…
Objectifs pédagogiques
- Appliquer les principes de la Conception Orientée Objet
- Maîtriser la syntaxe du langage C++
- Concevoir des applications C++ utilisant des classes
- Utiliser les outils de développement associés au langage C++
- Maîtriser les ajouts majeurs de la norme C++ 11
Programme détaillé
Les extensions du langage (3,5 heures)
• L’historique et les versions du langage C++
• Un rappel sur le langage C
• Le passage de paramètres par référence
• La surcharge des fonctions
• Les valeurs de paramètres par défaut
• La nouvelle librairie d'entrées/sorties «iostream»
• La gestion de la mémoire dynamique
• Travaux pratiques : Réaliser un programme qui permet de trouver un nombre tiré de façon aléatoire en utilisant les extensions du langage
Les classes (10,5 heures)
• La conception de classes (attributs et méthodes)
• L’instanciation d'objets
• L’encapsulation (les attributs d’accès private et public)
• Les accesseurs
• Les méthodes « inline »
• Les constructeurs et les destructeurs
• Les attributs et les méthodes de classes
• La surcharge d’opérateurs
• Les relations d’associations
• Travaux pratiques : Réaliser une classe représentant un compte bancaire et tester son bon fonctionnement
L'héritage et le polymorphisme (7 heures)
• La conception d’une classe dérivée
• Les constructeurs et les destructeurs
• L’attribut protected
• La redéfinition de méthodes
• Les méthodes virtuelles
• Le destructeur virtuel
• L’héritage multiple
• Les classes abstraites
• Travaux pratiques : Réaliser une classe CompteEpargne par héritage de la classe Compte
La gestion des exceptions (2 heures)
• Un rappel sur la gestion des erreurs en C
• La levée d’exception
• Le traitement d’exception avec le bloc try … catch
• La spécification d’exception
• La création de classe exception
• Travaux pratiques : Mettre en place des traitements d’erreurs sur les méthodes de la classe Compte à l’aide des exceptions
Les templates et la stl (7 heures)
• Les objectifs et les intérêts de la généricité
• La conception et l’utilisation de classes génériques
• La présentation de la stl
• La classe String
• La manipulation de vecteurs
• Les autres collections de la stl
• Travaux pratiques : Réaliser une classe Banque qui gère un ensemble de classes en utilisant les collections de la stl
Les principaux apports de C++ 11 (5 heures)
• Les inférences de type (auto)
• Initialisation d’un pointeur nul : le nullptr
• Les tableaux à taille fixe
• Notion d’intervalle pour les boucles
• Les énumérations fortement typées
• Les directives de constructeurs default et delete
• Les qualificatifs de méthodes override, final
• Présentation de la RAI et des pointeurs intelligents
• Travaux pratiques : Evolution de l’application bancaire en intégrant les différentes nouveautés