Vous êtes ici : Accueil > Développer en C++

Développer en C++

Les + de la formation

La formation DEVELOPPER en C++ vise à former à la programmation de solutions logicielles indispensables pour se positionner sur différents postes selon votre profil, développeur, développeur back end, développeur full stack…

Les débouchés ou poursuites d'études

- Développeur / Back End / Fullstack

- Poursuivre en formation Développeur Web Web Mobile (TP Niveau III) 

Aptitudes

  • Des connaissances en programmation sont exigée
  • De bonnes notions en anglais sont nécessaires. 
  • Très bonne pratique de l’outil informatique, rigueur dans la gestion des productions, aptitude à communiquer, capacité à travailler en équipe.

Objectifs

A l'issue de la formation, les stagiaires sont capables de : 

- Développer une interface utilisateur

- Développer des composants d'accès aux données

- Développer des pages web en lien avec une base de données

Programme

Introduction à la syntaxe du langage C++ :

• Différences entre C et C++ • Données : définition, initialisation, types • Expressions : références, mécanismes de cast, conversions de types • Notion d’opérateurs • Références : arguments, valeurs de retour • Fonctions• Intégration de code C dans la programmation C++. • Type constants et espaces de nommage

 

Classes et les objets C++ :

• Notion de syntaxe : champs, méthodes et constructeurs • Fonctions • Contrôle d'accès • L'autoréférence • Champs et méthodes statiques • Création dynamique de tableaux d'objets • Méthodes de conception des classes • Méthodes et classes « Friend » • Problématiques de gestion mémoire • C++11 : constructeurs de copie, délégation, et déplacement

 

Programmation orientée objet :

• Relation entre le C++ et la programmation objet • Concepts des techniques orientées objet • Méthodologies orientées objet. • Modèles et notation UML 

 

Exceptions :

• Concepts méthodologiques • Aspects syntaxiques et génération d’exceptions

 

Surcharge des opérateurs :

• Concept de la surcharge • Surcharge d’opérateurs : binaires /particulière : l'opérateur indice, fonction, conversion/de gestion mémoire /'<<' et '>>'

 

Dérivation et héritage :

• Aspects syntaxiques : définition des classes dérivées, constructeurs • Contrôle d'accès • Fonctions virtuelles/polymorphisme • Classes abstraites • Interfaces • Dérivation multiple. • Aspects sémantiques et méthodologiques

 

Modèles :

• Modèle de classe : principes et mécanismes • Surcharge des modèles et redéfinition de méthodes • Modèle de fonction : principes et mécanismes • Modèles et surcharge des opérateurs • Modèles et les mécanismes de dérivation

 

I/O (Input/Output ou Entrées/Sorties) :

• Principes I/O • Principe des « streams » • Classes d'entrée/sortie et leurs hiérarchies

 

STL (Standard Template Library) :

• Objectifs/principes, modèles et classes • Conteneurs, itérateurs, boucle basée sur un intervalle avec C++ 11

• Types complémentaires, conteneurs, algorithmes, itérateurs, objets fonctions, adaptateurs • Chaînes de caractères STL, classe « template basic_string » • Conteneurs séquentiels et associatifs : définition, rôle et critères de choix • Allocateurs et gestion de la mémoire des conteneurs • Vector, List, Set, Stack • Itérateur/parcours d'un conteneur • Groupes d'algorithmes STL : mutants, non-mutants, tri/fusion, numériques • Paramétrage d’algorithmes génériques via objets « fonction » • Manipulation de conteneurs • « Adapteurs » et modification du comportement d'un composant • Traitements sur les flux  • RAII : pointeurs automatiques et classe auto_ptr. • Exceptions standard à la STL

 

Gestion des opérateurs :

• Opérateurs unaires, binaires - d'indirection - de référencement - d'incrémentation/décrémentation préfixés/post-fixés • Comparaison, affectation • Surcharge de l'opérateur [], des opérateurs d'insertion (<<) et d'extraction (>>). • Foncteurs et surcharge de l'opérateur ()

 

Conversion et RTTI :

• Opérateurs de conversion. de casting /const_cast, static_cast, reinterpret_cast/ typeid/exceptions liées

• Constructions implicites, le mot-clé explicit • Conversion dynamique/Runtime Type Information

• Classe type_info • « Downcasting », opérateur dynamic_cast

 

Généricité :

• 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/totale • Méta-programmation.

 

Progression vers C++11 :

• Délégation de constructeurs • Énumérations « type safe » • Mot-clé auto et boucle sur intervalle • Référence rvalue et impact sur la forme normale des classes C++ • Lambda-expressions • Nouveaux conteneurs : array, forward_list, unordered_set, unordered_map • Classe tuple • Smart pointers : shared_ptr, weak_ptr, unique_ptr. • Nouveautés foncteurs et binders. • Gestion des threads. • Expressions régulières.

 

BOOST :

• Pointer Container Library • Structures de données boost::any, boost::variant. • Programmation événementielle – connexions/signaux • Gestion des processus, • mécanismes de communication interprocessus • Mémoire partagée.

 

Utilisation avancée de l'héritage :

• Héritage versus embarquement /privé /protégé/ multiple, gestion de collisions de membre/ en diamant/ virtuel et dynamic_cast • Exportation de membres cachés via la Clause Using • Principes de conception : substitution de Liskov, principe d'ouverture/fermeture, inversion des dépendances • Règles d'implémentation des interfaces en C++

 


Toutes nos formations sont modulables et chaque certificat de compétences professionnelles (CCP) peut être réalisé indépendamment.
Codes ROME
M1802
M1803
M1805
Codes FORMACODE
31036
31067
31088
31089
31090
31094
31098


Validation
Attestation de fin de formation

ÉVALUATION

Évaluation en fin de formation
Retrouvez-nous aussi sur les réseaux sociaux   FacebookLinkedIntwitterYouTubeViadeogoogleplus