Formation : Les fondamentaux de la programmation orientée objet en C++
L’objectif de la formation est de comprendre les concepts fondamentaux de la programmation orientée objets par le biais du langage C++.
L’environnement de développement utilisé sera Visual Studio ou Eclipse/CDT.
- Historique et versions du langage C++
- Le HelloWorld en C++
- Une nouvelle librairie d’entrées/sorties
- Une nouvelle forme de commentaires
- Un contrôle de typage renforcé par rapport au C
- Principe de localité
- Gestion dynamique de la mémoire
- Mode de passage de paramètres par référence
- Définition de fonctions inlines
- Surcharge et valeurs de paramètres par défaut
- Valeurs de paramètres par défaut
- Surcharge de fonctions
- Surcharge d’opérateurs
- Définition de fonctions membres d’une structure
- Quelques points de vocabulaire
- Définition de classes et instanciation d’objets
- Définition de membres à l’intérieur d’une classe
- Définition d’attributs de classes
- Définition de méthodes
- Comparatifs entre méthodes et fonctions
- Concept d’encapsulation
- Définition de méthodes d’accès aux attributs
- Niveaux de visibilité des membres d’une classe
- Intérêts de l’encapsulation
- Concept de composition
- Les constructeurs et les destructeurs
- Le constructeur par défaut
- Le constructeur par copie
- Le destructeur
- Comment bien prototyper nos méthodes
- Définition d’opérateurs membres d’une classe
- Buts et intérêts de la généricité (factorisation de code)
- Les fonctions génériques
- Aspects syntaxiques
- Où localiser le code d’une fonction générique
- Pièges à éviter
- Aspects syntaxiques
- Implémentation des méthodes génériques
- Recopie d’objets contenant des pointeurs
- Pourquoi mettre en œuvre l’héritage ?
- Aspects syntaxiques
- Constructions et destructions d’objets basés sur l’héritage
- Cycle de vie d’un objet
- Cascade des appels de constructeurs
- Cascade des appels de destructeurs
- L’héritage induit le polymorphisme
- Modes de liaisons d’appels de méthodes
- La liaison statique (early binding)
- La liaison dynamique (late binding)
- Fonctionnement en interne de la liaison dynamique
- Le piège des destructeurs
- Rappels sur la gestion des erreurs en C
- Valeurs de retour identifiant le problème survenu
- Utilisation de l’entête
- Limites de ce modèle
- Qu’est qu’une exception ?
- Types d’exceptions
- Définition d’une classe d’exception
- Les classes d’exceptions ANSI
- Déclenchement d’exceptions dans un système informatique
- Modes de traitement d’une exception
- Capturer l’exception – instruction try … catch
- Relayer l’exception à la méthode appelante
- Cas subtils d’utilisations des exceptions
Durée : 21h
Horaires : soirs / week-ends
Groupes de 5 à 10 personnes