Menu Recherche Panier
(...)
Vous êtes ici : Accueil > Catalogue des formations > Formation Les fondamentaux du développement C++
Technique

Formation Les fondamentaux du développement C++

Développez des applications stables et performantes

C++ est un langage de choix pour réaliser des applications évolutives, robustes et efficaces. Cette performance a cependant un prix : elle suppose de la part du développeur une réelle maîtrise, tant au niveau de la syntaxe que des concepts sous-jacents tels que les modèles mémoire, l’orientation objet ou encore la généricité. Cette formation permettra aux participants d'appréhender les principes fondamentaux de la conception objet et de les appliquer de façon effective en C++.
Public
  • Développeurs
  • Chargés de développement d’applications informatiques
Pré-requis
Programme détaillé

Introduction à la conception orientée objet

  • Les paradigmes de développement (procédural, objet, fonctionnel, déclaratif)
  • Principes de conception objet : Abstraction, Encapsulation, Héritage et Polymorphisme
  • Généricité

Syntaxe et modèle de C++

  • Point d’entrée d’une application
  • Utilisation de la console, objets d’entrée/sortie (streams)
  • Fonctions, paramètres et spécificateurs
  • Les tableaux
  • La classe C++11 arrayT>
  • Structures de contrôle
  • La boucle « for-each » de C++11
  • Introduction à la bibliothèque standard
  • Les modèles mémoire (Data segment, Heap, Stack)
  • Les pointeurs et les références
  • La classe std::string
  • L’initialisation uniforme de C++11
  • Allocation et désallocation dynamiques
  • Les smart pointers (unique_ptrT>, shared_ptrT>) de C++11
  • Les espaces de noms (namespaces)

Les concepts Objet appliqués au C++

  • Classes, instances, cycle de vie d’un objet
  • Encapsulation et visibilité (public-private-protected)
  • Méthodes, constructeurs, destructeurs
  • La zone d’initialisation des membres (ZIM)
  • Surcharge (overloading)
  • Membres de classes (ou statiques)
  • Héritage, classes abstraites et concrètes
  • Constance et robustesse
  • Les nouveaux mots-clés (default, delete, override, final) de C++11
  • Polymorphisme et interfaces
  • Héritage privé
  • La surcharge des opérateurs
  • Clonage d’objets (construction par recopie / opérateur d’affectation)

Robustesse et traitement des exceptions

  • Traitement des erreurs
  • Assertions
  • Traitement des exceptions
  • Les clauses try – catch
  • Gestionnaires d’exception
  • Création d’une classe d’exception personnalisée
  • Contrôle runtime de C++11 (clause noexcept)

Points clés de la Standard Template Library (STL)

  • Présentation des principaux conteneurs (vector, list, set, map, deque)
  • Critères de choix pour un conteneur STL
  • Emplacement de C++11
  • Les itérateurs
  • Les algorithmes génériques

Généricité - Templates

  • Définitions de patrons, syntaxe et instanciation
  • Patrons de fonctions
  • Templates de classe

Qualité logicielle et tests d’applications

  • Les best practices en C++
  • Idiomes et règles de conception
  • Introduction aux design patterns
  • Le développement guidé par les tests (TDD – Test Driven Development)
  • Présentation succincte de GoogleTest
Les plus de cette formation Les fondamentaux du développement C++
  • Une pédagogie efficace : l'alternance d'exposés théoriques et de mises en application immédiates à travers de nombreux travaux pratiques.
  • Les méthodes, bonnes pratiques et astuces pour tirer le meilleur parti de la programmation en C++ et développer ainsi des applications stables et performantes.
  • Cette formation est éligible à l'action collective Fafiec "Développer avec les langages .Net, Java et C++" (Réf : 28112).
Moyens pédagogiques
  • Répartition théorie/pratique : 45%/55%.
  • Cette formation se compose d’une alternance d’apports théoriques, de travaux pratiques s’articulant autour d’une application fil rouge, de démonstrations, de phases d’échanges entre participants et de synthèses de la part du formateur.
  • Ressources pédagogiques : un guide d’animation, un ordinateur connecté à Internet par participant, un support de cours en français et un cahier d’ateliers.
  • Une attestation de fin de formation sera remise au stagiaire à l'issue de la formation.

Informations

  • Durée : 5 jours (35h)
  • Tarif : 2 570 € HT
  • Réf. : LA200
  • Option(s)
    • Repas Paris : 115 € HT
    • Repas province : 110 € HT


Dates des sessions
Session garantie Formation à distance Session accessible à distance Visio
Bon à savoir...



= une réponse possible
= plusieurs réponses possibles

1. Quel est le nom de la fonction principale d’un programme en C ?
2. Parmi les noms suivants, lesquels sont valides pour nommer une variable ?
3. Qu’affiche le code suivant si la variable A contient 10.5 ? printf("A = %d ",A) ;
4. Quelle ligne de code permet de récupérer un nombre décimal entré au clavier ?
5. Que se passe-t-il après un return ?
6. Comment inclure une bibliothèque standard ?
7. Que donne le code suivant : *A ?
8. Comment déclarer un tableau de 5 entiers ?
9. Qu’est-ce qu’une chaîne de caractères ?
10. Comment initialiser un pointeur sur un tableau de 10 char ?
Vous n'avez pas répondu à toutes les questions !
Vous avez % de bonnes réponses, vous pouvez donc suivre cette formation.
Vous avez % de bonnes réponses.
Nous vous invitons à contacter nos Conseillers Formation au 0825 07 6000 afin qu'ils vous orientent vers une formation plus adaptée à vos connaissances.