Choisissez votre langue
Formation C++
Plus de 2 millions d'apprenants dans le monde

Formation C++

4,6

Maîtrisez le C++ de zéro — de la syntaxe de base et de la gestion de la mémoire aux templates, à la concurrence et aux fonctionnalités modernes du C++23. Ce cours offre la profondeur technique et la pratique nécessaire pour écrire du code C++ rapide, sûr et de qualité professionnelle. Que vous visiez la programmation système, le développement embarqué ou les applications haute performance, voici l'ensemble de compétences complet dont vous avez besoin.

Dedika pour entreprises

Ce que vous allez apprendre:

Vous allez construire une base solide en syntaxe C++, contrôle de flux et fonctions avant de passer aux pointeurs, à la gestion de la mémoire et à la programmation orientée objet. Vous maîtriserez la bibliothèque standard de templates, écrirez du code générique avec des templates et appliquerez des fonctionnalités modernes comme les lambdas, la sémantique de déplacement et les liaisons structurées. Ce cours couvre également la gestion des erreurs, les tests unitaires, le profilage des performances, les systèmes de construction avec CMake et les pratiques professionnelles, y compris le contrôle de version et la revue de code. À la fin, vous aurez les compétences nécessaires pour développer des logiciels C++ de qualité professionnelle dans un large éventail de domaines.

Comment vous étudiez de façon pratique Formation C++

Comment vous pratiquez Formation C++

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre propre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

8 Chapitres • 40 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Fondamentaux du C++ et configuration de l'environnement

  • Leçon 1 • Variables, types et littéraux

    Présente les types de données fondamentaux, la déclaration de variables et les valeurs littérales. Construit le vocabulaire nécessaire pour toute manipulation future de données.

  • Leçon 2 • Configuration de l'environnement de développement

    Installez des compilateurs, des IDE et des outils de build pour le développement C++. Fournit la base technique dont dépend chaque chapitre suivant.

  • Leçon 3 • Opérateurs et expressions

    Explore les opérateurs arithmétiques, relationnels, logiques et binaires. Les règles de précédence des opérateurs sont appliquées pour écrire des expressions correctes.

  • Leçon 4 • Syntaxe de base et structure d'un programme

    Couvre l'anatomie d'un fichier source C++, y compris les en-têtes, la fonction main et les instructions. Relie les règles de syntaxe à un code lisible et compilable.

  • Leçon 5 • Entrée et sortie avec iostream

    Enseigne les E/S console à l'aide de cin et cout de la bibliothèque standard. Permet de créer des programmes interactifs essentiels pour les premiers exercices.

Chapitre 2Voir les détails

Flux de contrôle et fonctions

  • Leçon 1 • Boucles et itération

    Présente les boucles for, while et do-while ainsi que les instructions de contrôle de boucle. Les modèles de répétition sous-tendent les algorithmes des chapitres suivants.

  • Leçon 2 • Portée, durée de vie et classes de stockage

    Explique la portée des variables locales, globales et statiques ainsi que la durée de vie des objets. Prévient les bogues courants causés par une visibilité mal comprise des variables.

  • Leçon 3 • Récursivité et surcharge de fonctions

    Présente la résolution de problèmes récursifs et plusieurs signatures de fonctions avec le même nom. Prépare les apprenants à des modèles algorithmiques complexes.

  • Leçon 4 • Déclaration et définition de fonctions

    Enseigne comment déclarer, définir et appeler des fonctions avec des paramètres et des types de retour. Les fonctions sont l'unité principale de réutilisation du code en C++.

  • Leçon 5 • Instructions conditionnelles

    Couvre les constructions if, else-if, else et switch pour la prise de décision. Permet directement de créer des programmes logiques tout au long du cours.

Chapitre 3Voir les détails

Tableaux, pointeurs et mémoire

  • Leçon 1 • Allocation dynamique de mémoire

    Enseigne l'allocation sur le tas avec new et la désallocation avec delete. Une bonne gestion des ressources ici prévient les fuites mémoire dans tous les programmes futurs.

  • Leçon 2 • Tableaux et chaînes de style C

    Couvre les tableaux de taille fixe, les tableaux multidimensionnels et les chaînes terminées par un caractère nul. Établit les structures de données bas niveau sur lesquelles les pointeurs s'appuient.

  • Leçon 3 • Références et const-correctness

    Distingue les références des pointeurs et impose l'utilisation de const pour la sécurité. La const-correctness est une norme de codage C++ professionnelle.

  • Leçon 4 • Aperçu des pointeurs intelligents

    Présente unique_ptr, shared_ptr et weak_ptr comme des alternatives plus sûres aux pointeurs bruts. Fait le pont entre la gestion manuelle de la mémoire et les idiomes C++ modernes.

  • Leçon 5 • Notions de base sur les pointeurs

    Présente la déclaration de pointeur, l'opérateur d'adresse et le déréférencement. Les pointeurs sont centraux pour la mémoire dynamique et les fonctionnalités orientées objet à venir.

Chapitre 4Voir les détails

Programmation orientée objet en C++

  • Leçon 1 • Polymorphisme et fonctions virtuelles

    Implémente le polymorphisme d'exécution via des fonctions virtuelles et des classes abstraites. Permet des conceptions flexibles et extensibles, centrales pour les grandes bases de code C++.

  • Leçon 2 • Héritage et hiérarchies de classes

    Modèle les relations « est un » à l'aide de l'héritage simple et multiple. Établit la structure hiérarchique requise pour le polymorphisme.

  • Leçon 3 • Surcharge d'opérateurs

    Permet aux types personnalisés d'utiliser les opérateurs standard de manière naturelle et expressive. Renforce l'encapsulation en gardant la logique à l'intérieur de la classe.

  • Leçon 4 • Constructeurs, destructeurs et initialisation

    Enseigne la gestion du cycle de vie des objets via les constructeurs et les destructeurs. Une initialisation correcte prévient les comportements indéfinis dans les programmes complexes.

  • Leçon 5 • Classes et objets

    Couvre la définition de classe, les membres de données, les fonctions membres et les spécificateurs d'accès. Les classes sont le principal mécanisme d'abstraction en C++.

Chapitre 5Voir les détails

La bibliothèque standard de modèles (STL)

  • Leçon 1 • Gestion des chaînes avec std::string

    Couvre les opérations std::string, la manipulation et les utilitaires de conversion. Remplace les chaînes de style C dangereuses par une alternative sûre et riche en fonctionnalités.

  • Leçon 2 • Algorithmes STL

    Applique les algorithmes de tri, de recherche, de transformation et d'accumulation depuis <algorithm>. Remplace les boucles manuelles sujettes aux erreurs par des expressions concises d'une seule ligne.

  • Leçon 3 • Conteneurs associatifs et non ordonnés

    Présente map, set, unordered_map et unordered_set pour l'accès par clé. Permet des modèles de recherche rapide utilisés dans des applications réelles.

  • Leçon 4 • Conteneurs séquentiels

    Couvre vector, list, deque et array pour le stockage ordonné des données. Choisir le bon conteneur a un impact direct sur les performances du programme.

  • Leçon 5 • Itérateurs et plages

    Explique les catégories d'itérateurs, les modèles de parcours et les opérations basées sur les plages. Les itérateurs sont l'interface universelle entre les conteneurs et les algorithmes.

Chapitre 6Voir les détails

Modèles et programmation générique

  • Leçon 1 • Concepts et contraintes en C++20

    Applique les concepts C++20 pour contraindre les paramètres de modèle avec des exigences lisibles. Produit des messages d'erreur plus clairs et des interfaces auto-documentées.

  • Leçon 2 • Notions de base de la métaprogrammation de modèles

    Présente le calcul à la compilation à l'aide de traits de type et de constexpr. Permet des abstractions à coût nul et une validation à la compilation.

  • Leçon 3 • Modèles de fonctions

    Présente la syntaxe des modèles pour écrire des fonctions génériques avec des paramètres de type. Élimine la duplication de code tout en préservant la sécurité totale des types.

  • Leçon 4 • Modèles de classes

    Étend les modèles aux classes, permettant des conteneurs et des utilitaires génériques. Sous-tend les conteneurs STL étudiés dans le chapitre précédent.

  • Leçon 5 • Modèles variadiques

    Couvre les packs de paramètres et les expressions de repli pour les modèles à nombre d'arguments variable. Permet des API flexibles comme std::tuple et des utilitaires de journalisation.

Chapitre 7Voir les détails

Fonctionnalités et idiomes C++ modernes

  • Leçon 1 • Liaisons structurées et std::optional

    Présente les liaisons structurées pour la décomposition de type tuple et optional pour les valeurs nullables. Réduit le code passe-partout et exprime clairement l'intention.

  • Leçon 2 • std::variant et std::any

    Couvre les unions type-safe avec std::variant et le stockage à effacement de type avec std::any. Remplace les unions C dangereuses et les pointeurs void dans le code moderne.

  • Leçon 3 • Notions fondamentales de la concurrence avec std::thread

    Présente la création de threads, les primitives de synchronisation et la prévention des courses de données. Prépare les apprenants au développement d'applications multi-threadées.

  • Leçon 4 • Sémantique de déplacement et références rvalue

    Explique les références rvalue, les constructeurs de déplacement et l'affectation par déplacement pour la performance. Élimine les copies inutiles dans les programmes gourmands en ressources.

  • Leçon 5 • Expressions lambda et fermetures

    Couvre la syntaxe lambda, les listes de capture et l'utilisation avec les algorithmes STL. Permet des objets fonctions concis et en ligne sans code passe-partout.

Chapitre 8Voir les détails

Gestion des erreurs, tests et performances

  • Leçon 1 • Profilage et analyse des performances

    Applique des outils de profilage pour identifier les goulots d'étranglement et mesurer le temps d'exécution. L'optimisation basée sur les données évite un réglage prématuré et mal orienté.

  • Leçon 2 • Tests unitaires en C++

    Présente les frameworks de test, la conception de cas de test et le workflow de développement piloté par les tests. Les tests automatisés vérifient l'exactitude au fur et à mesure de l'évolution du code.

  • Leçon 3 • Assertions et programmation défensive

    Utilise assert, static_assert et des vérifications de préconditions pour détecter les bogues tôt. Les techniques défensives réduisent le temps de débogage dans les grandes bases de code.

  • Leçon 4 • Techniques d'optimisation

    Couvre les dispositions de données adaptées au cache, les améliorations algorithmiques et les indications pour le compilateur. Applique les résultats du profilage pour obtenir des accélérations mesurables.

  • Leçon 5 • Gestion des exceptions

    Couvre la syntaxe try-catch-throw, les hiérarchies d'exceptions et la conception de code exception-safe. Une propagation correcte des erreurs est obligatoire dans les logiciels C++ professionnels.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Étudiant en informatique : désireux de dépasser le pseudo-code pour passer aux langages réels.

  • Développeur Python ou JavaScript : prêt à comprendre ce qui se passe sous l'abstraction.

  • Futur développeur de jeux : ayant besoin du contrôle bas niveau que C++ offre de manière unique.

  • Ingénieur électricien : cherchant à écrire des micrologiciels et des pilotes avec des outils de langage modernes.

  • Personne en reconversion professionnelle : visant des postes de programmation système bien rémunérés sans formation en informatique.

  • Passionné de bricolage : voulant programmer des microcontrôleurs et des dispositifs embarqués plus efficacement.

Ce que disent nos apprenants

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable en Côte d’Ivoire ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail du cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF