logo-ngstech-mobile
Allons vers l'avenir, ensemble.
Appelez-nous 06 63 90 76 26

programmation en C++

Formation informatique  › Formation C++

Formation C++

MODALITÉS D’ÉVALUATION D’ATTEINTE DES OBJECTIFS DE LA FORMATION
  • QCM/Quizz
  • Grille d’évaluation
  • Travaux pratiques
  • Gestion de l’encapsulationTests de contrôle de connaissances et validation des acquis à chaque étape
  • Echange avec le formateur par visioconférence (webinar), téléphone et mail
MOYENS PERMETTANT LE SUIVI ET L’APPRÉCIATION DES RÉSULTATS
Suivi de l’exécution :
  • Feuilles de présences signées des participants et du formateur par demi-journée
  • Attestation de fin de formation mentionnant les objectifs, la nature et la durée de l’action et les résultats de l’évaluation des acquis de la formation.
Appréciation des résultats :
  • Recueil individuel des attentes du stagiaire
  • Questionnaire d’auto-évaluation des acquis en début et en fin de formation
  • Évaluation continue durant la session
  • Remise d’une attestation de fin de formation
  • Questionnaire d’évaluation de la satisfaction en fin de formation
MOYENS PÉDAGOGIQUES ET TECHNIQUES D’ENCADREMENT DES FORMATIONS
Modalités pédagogiques :
  • Evaluation des besoins et du profil du participant
  • Apport théorique et séquences pédagogiques regroupées en différents modules
  • Cas pratiques
  • Questionnaire et exercices
  • Tests de contrôle de connaissances et validation des acquis à chaque étape
  • Retours d’expériences
  • Séquences pédagogiques regroupées en différents modules,
Référent pédagogique et formateur : Chaque formation est sous la responsabilité du directeur pédagogique de l’organisme de formation ; le bon déroulement est assuré par le formateur désigné par l’organisme de formation.

JOUR 1

Rappel : C++ langage et C
  • Instructions, déclaration de variables, types et littéraux
  • Portée des variables
  • Opérateurs et opérateurs logiques
  • Conditions
  • Boucles sous C++
Travaux pratiques
  • Création d’un premier programme
  • Déclarations de variables
  • Ajout des opérateurs principaux et des structures de contrôle principales
Structure d’un programme
  • Structure d’un programme C et C++
  • Header et implémentation
  • Constantes
  • Utilisation de forward
  • Compilation conditionnelle
Travaux pratiques
  • Travail sur les headers et implémentation en C++
  • Compréhension des phases de pré-compilation
  • Compilation et Test sous C++
Définition de fonctions
  • La stack
  • Comment appeler une fonction
  • Passage par valeur, par référence et par pointeur
  • Pointeur sur fonction
Travaux pratiques
  • Développer un programme C++ avec déclaration et appel multiple de fonctions
  • Modification des paramètres passés aux fonctions par valeur et référence
  • Observations et discussions
  • Utilisation de pointeurs sur les fonctions

JOUR 2

Les classes
  • Définition d’une classe sous C++
  • Maitrise de constructeur et des objets
  • Mot clé « this » dans C++
  • Gestion de l’encapsulation
  • Membres et fonctions statiques d’une classe
Travaux pratiques
  • Création d’un projet avec plusieurs classes développées
  • Gestion de l’encapsulation des données
  • Définition et utilisation des constructeurs
  • Exploitation des membres et des fonctions statiques
  • Compréhension du mot clé « this » dans les méthodes de classe

JOUR 3

Gestion de la mémoire sous C++
  • Exploration du context automatique et rappel sur la stack
  • Context Statique et dynamique
  • Destructeur d’une classe sous C++
Travaux pratiques
  • Développer un projet sur la gestion de mémoire
  • Implémentation des constructeurs et des destructeurs
  • Travailler avec les concepts heap et stack
Travail avec const
  • Utilisation du mot clé « const »
  • Discussion des intérêts de « const »
  • Paramètres et Fonctions membre de « const »
Fonctions inline
  • Inline implicite et explicite
  • Impact sur la compilation et le code généré
Travaux pratiques
  • Ajout de fonctions inline à un projet C++
  • Test de fonctions inline

JOUR 4

Héritage et polymorphisme
  • L’héritage public sous C++
  • Comment construire des classes dérivées
  • Utilisation de la ZIM
  • Développer des fonctions virtuelles, des fonctions pures et classes abstraites
  • Comment détruire des classes dérivées
Travaux pratiques
  • Reprise du projet sur les classes
  • Développer des niveaux d’héritage dans le projet C++
  • Ajout de fonctions virtuelles et virtuelles pures
  • Rajout de classes abstraites dans le projet C ++
Surcharge des opérateurs
  • Exploration de l’opérateur cast
  • Opérateur de pointeur
Travaux pratiques
  • Rajouter de la surcharge de plusieurs opérateurs sur un projet C++ existant
  • Tester les opérateurs surchargés

JOUR 5

Constructeur de copie et surcharge d’opérateur d’affectation
  • Surcharge du contructeur de copie et de l’opérateur d’affectation
Utilisation de STL
  • Définition de STL
  • Utilisation des conteneurs
  • Itérateurs
  • Algorithmes sous STL
Travaux pratiques
  • Développer des services STL sous un projet C++
  • Montrer et discuter les apports de la STL dans C++
Gestion des exceptions
  • Problématiques
  • Exploration des exceptions et références
  • Utilisation des valeurs des exception et valeurs
  • Exception et pointeurs
Travaux pratiques
  • Intégration du bloc de gestion des exceptions try-catch dans un projet existnat C++
Evolutions du langage C++
  • Expressions lambda
  • Panorama des apports des versions C++11 à C++20
  • Les closures
  • Apports des nouvelles versions dans le langage et les classes