Accueil du site - Catalogue de formations - Formations développement - Formation C++ : développer en langage C++
Formation au langage C++ pour développer.

Prochaine session :
- intra sur demande


Contact : 2i2L - Informatique Internet et Logiciels Libres. Tel. : 02 40 37 02 06 – Mobile : 06 07 38 14 18 – Courriel : formation chez 2i2l.fr


Résumé de la formation :

- Logiciels : chaîne de production gcc sous l’IDE Eclipse et plug-in CDT
- Durée : cinq (5) jours
- Objectifs : à l’issue du stage, les participants seront capables de développer des applications basées sur les mécanismes objets du langage C++ : utiliser les aspects fortement typés du langage C++, développer des classes C++ fiables, construire des applications C++ en utilisant l’héritage et le polymorphisme, exploiter les classes d’entrée/sortie C++ de la librairie standard, traiter les cas d’erreurs à l’aide des exceptions.
- Pré-requis : cette formation s’adresse aux personnes sachant déjà : donner une définition des concepts objets et les bénéfices induis par leur utilisation, implémenter des algorithmes à l’aide des structures de contrôles C.
- Pédagogie : chaque aspect théorique est illustré par un exemple concret de mise en œuvre puis exploité dans la réalisation incrémentale d’une véritable application en mode console. 50 % du temps est consacré à la réalisation de cette application. Chaque stagiaire possède son poste de travail.


C++ est un langage de programmation compilé, permettant la programmation sous de multiples paradigmes comme la programmation procédurale, la programmation orientée objet et la programmation générique. Le langage C++ n’appartient à personne et par conséquent n’importe qui peut l’utiliser sans besoin d’une autorisation ou obligation de payer pour avoir le droit d’utilisation. C++ est l’un des langages de programmation les plus populaires, avec une grande variété de plates-formes matérielles et de systèmes d’exploitation. [1]

- Site officiel du langage C++
- l’article C++ sur Wikipédia

Eclipse est un projet, décliné et organisé en un ensemble de sous-projets de développements logiciels, de la fondation Eclipse visant à développer un environnement de production de logiciels qui soit libre, extensible, universel et polyvalent, en s’appuyant principalement sur Java. Son objectif est de produire et fournir des outils pour la réalisation de logiciels, englobant les activités de programmation (notamment environnement de développement intégré et frameworks) mais aussi d’AGL recouvrant modélisation, conception, test, gestion de configuration, reporting… [2]

- le site officiel d’Eclipse
- Eclipse sur Wikipédia
- la licence EPL d’Eclipse


Programme

Les aspects fortement types du langage
- référence et transparence d’appel
- valeur par défaut des paramètres de fonctions
- surcharge de fonction

Les classes C++
- définition d’attributs et de méthodes
- encapsulation : parties publiques, privées
- constructeurs et destructeurs
- techniques d’instanciation (pile et tas)
- attributs et méthodes de classes (static)
- fonctions et classes amies (friend)

La surcharge d’operateur
- principe de base
- opérateurs unaires et opérateurs binaire
- surcharge d’affectation
- surcharge des opérateurs de conversions

L’heritage
- classes de base et classes dérivées
- constructeur et destructeur
- partie protected
- héritage multiple

Le polymorphisme
- méthodes virtuelles
- infrastructure d’exécution
- destructeur virtuel
- classe abstraite et généricité
- hiérarchie de classes

Les entrées sorties C++
- hiérarchie de classe de la librairie iostream
- opérations sur les streams
- surcharge des opérateurs << >>
- manipulation de fichiers

Introduction aux aspects avances du C++
- templates de classe
- templates de fonctions
- découverte de la STL
- exceptions et stratégies de traitement des erreurs
- mise en œuvre des exceptions C++
- présentation des namespace et des RTTI

Les nouvelles fonctionnalites de la norme
- C++11
- type auto, nullptr, boucle sur intervalle
- délégation du constructeur
- directives =delete, =default

notes:

[1] Source Wikipédia

[2] Source Wikipédia