Microsoft

Techniques de programmation C++ intermédiaires

Profitez de l'une de nos meilleures offres et renforcez vos compétences avec 50 % de réduction sur Coursera Plus. Économisez maintenant.

Microsoft

Techniques de programmation C++ intermédiaires

 Microsoft

Instructeur : Microsoft

1 705 déjà inscrits

Inclus avec Coursera Plus

Obtenez un aperçu d'un sujet et apprenez les principes fondamentaux.
niveau Débutant

Expérience recommandée

4 semaines à compléter
à 10 heures par semaine
Planning flexible
Apprenez à votre propre rythme
Obtenez un aperçu d'un sujet et apprenez les principes fondamentaux.
niveau Débutant

Expérience recommandée

4 semaines à compléter
à 10 heures par semaine
Planning flexible
Apprenez à votre propre rythme

Ce que vous apprendrez

  • 1. Écrire, déboguer et compiler des programmes en C++ permettant de résoudre des problèmes concrets.

    2. Appliquer les principes de la programmation modulaire et orientée objet.

Compétences que vous acquerrez

  • Catégorie : Validation des données
  • Catégorie : Gestion de la mémoire
  • Catégorie : Maintenabilité
  • Catégorie : Gestion des paquets et des logiciels
  • Catégorie : Intégrations AI
  • Catégorie : Architecture des logiciels
  • Catégorie : Importation/exportation de données
  • Catégorie : Fichier E/S
  • Catégorie : Optimisation des performances
  • Catégorie : Conception de logiciels
  • Catégorie : C et C++
  • Catégorie : Connaissance de l'IA
  • Catégorie : Conception de l'API
  • Catégorie : Codage sécurisé
  • Catégorie : Conception fonctionnelle
  • Catégorie : Structures de données
  • Catégorie : Réutilisation du code

Outils que vous découvrirez

  • Catégorie : C++ (langage de programmation)
  • Catégorie : Outils de construction
  • Catégorie : Codage vibratoire

Détails à connaître

Certificat partageable

Ajouter à votre profil LinkedIn

Enseigné en Anglais

Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées

 logos de Petrobras, TATA, Danone, Capgemini, P&G et L'Oreal

Élaborez votre expertise en Algorithmes

Ce cours fait partie de la Certificat Professionnel Introduction de Microsoft à la programmation C++
Lorsque vous vous inscrivez à ce cours, vous êtes également inscrit(e) à ce Certificat Professionnel.
  • Apprenez de nouveaux concepts auprès d'experts du secteur
  • Acquérez une compréhension de base d'un sujet ou d'un outil
  • Développez des compétences professionnelles avec des projets pratiques
  • Obtenez un certificat professionnel partageable auprès de Microsoft

Il y a 5 modules dans ce cours

Le livre « Arrays and String Manipulation » vous permet d'approfondir vos compétences en C++ en vous apprenant à manipuler des collections de données et à traiter du texte à l'aide d'approches à la fois traditionnelles et modernes, en mettant l'accent sur la sécurité, les performances et les meilleures pratiques. Vous apprendrez à déclarer et à manipuler des tableaux unidimensionnels et multidimensionnels à l’aide à la fois de tableaux de style C et de conteneurs std::array modernes, à mettre en œuvre des opérations courantes telles que les algorithmes de tri et de recherche, à gérer des calculs matriciels pour des applications mathématiques, et à traiter efficacement du texte à l’aide des méthodes std::string tout en comprenant les failles de sécurité et les limites des chaînes de caractères de style C. Grâce à des exercices pratiques allant des opérations de base sur les tableaux à la création d’analyseurs de texte complets et de programmes de manipulation de matrices, vous développerez des compétences en optimisation de l’organisation de la mémoire, en vérification des limites, en gestion de l’Unicode pour les applications internationales, ainsi qu’en sélection de structures de données appropriées en fonction des compromis entre sécurité et performances. Ces compétences de niveau intermédiaire sont essentielles pour le développement en situation réelle dans divers domaines — de la gestion de bases de données et du calcul scientifique, qui reposent sur un traitement efficace des données par tableaux, au développement de jeux vidéo nécessitant des systèmes de coordonnées multidimensionnels et la détection de collisions, en passant par les applications web et les outils de traitement du langage naturel exigeant une manipulation sécurisée et efficace du texte — où votre capacité à gérer des collections de données en toute sécurité, à traiter le texte de manière sécurisée, et d’optimiser l’utilisation de la mémoire a un impact direct sur les performances, la sécurité et la fiabilité des applications dans les environnements logiciels professionnels.

Inclus

6 vidéos5 lectures4 devoirs6 laboratoires non notés

Le module « Opérations d’entrée-sortie » vous permet d’approfondir vos compétences en C++ en vous apprenant à gérer les flux de données entre les applications et les sources externes via des interfaces de console, des systèmes de fichiers et des techniques d’E/S modernes, transformant ainsi des programmes de base en systèmes prêts à l’emploi. Vous apprendrez à créer des applications de console professionnelles à l’aide de manipulateurs de flux avancés pour garantir la précision et l’alignement du formatage, à mettre en œuvre une validation robuste des entrées avec une gestion complète des erreurs, gérer les opérations sur les fichiers pour la lecture et l’écriture de données textuelles et binaires à l’aide de l’API du système de fichiers de C++17, et exploiter les fonctionnalités modernes de C++20/C++23, notamment std::format et std::print, pour des opérations de sortie simplifiées et sans risque de type. Grâce à des exercices pratiques allant de la création de générateurs de rapports formatés à la conception d’applications d’enregistrement de données et de systèmes complets de validation des entrées, vous développerez des compétences en gestion de l’état des flux, en stratégies de récupération après erreur, en analyse syntaxique de formats de données complexes et en conception d’interfaces utilisateur alliant fonctionnalité et accessibilité. Ces capacités d’E/S sont fondamentales pour les applications concrètes dans tous les domaines — des outils d’administration système et des systèmes de sauvegarde nécessitant une gestion fiable des fichiers, aux pipelines de traitement des données et aux applications de reporting d’entreprise exigeant un formatage et une validation professionnels, en passant par les systèmes de production traitant des formats de données structurés tels que CSV et JSON— où votre capacité à lire en toute sécurité des données externes, à gérer les erreurs avec souplesse, à stocker les informations de manière fiable et à présenter les résultats de manière professionnelle détermine la robustesse de l’application, l’intégrité des données et la qualité de l’expérience utilisateur.

Inclus

6 vidéos4 lectures4 devoirs6 laboratoires non notés

Le cours « Fonctions et programmation modulaire » transforme votre approche du développement logiciel en vous apprenant à créer du code réutilisable et facile à maintenir grâce à la conception de fonctions, à des techniques avancées liées aux fonctions et à des stratégies d’organisation systématique du code qui permettent de mettre en place une architecture d’application évolutive. Vous apprendrez à concevoir des fonctions avec des méthodes de passage de paramètres optimales pour la performance et la clarté, à mettre en œuvre la surcharge de fonctions pour créer des interfaces polyvalentes, à appliquer la récursivité pour résoudre des problèmes algorithmiques tout en comparant les approches récursives et itératives, et à organiser le code à l’aide d’espaces de noms et de modules C++20 modernes afin d’éviter les conflits de nommage et d’améliorer la structure du projet. Grâce à des exercices pratiques allant de la création de fonctions de base à la refactorisation de programmes monolithiques en architectures modulaires, en passant par la mise en œuvre d’algorithmes récursifs accompagnés d’une analyse des performances, vous développerez des compétences en matière de réutilisabilité du code, de conception d’interfaces, d’analyse des cadres de pile, de séparation des préoccupations et de prise de décision architecturale. Ces principes de programmation modulaire sont essentiels pour le développement logiciel professionnel dans tous les secteurs — du développement de jeux et d’applications web nécessitant une collaboration en équipe sur des bases de code partagées, aux grands systèmes d’entreprise exigeant des hiérarchies organisationnelles claires et la prévention des conflits, en passant par la conception d’API où des interfaces de fonctions intuitives déterminent l’expérience développeur — où votre capacité à éliminer la duplication de code, à créer des architectures basées sur des fonctions faciles à maintenir, et d’organiser systématiquement des projets complexes a un impact direct sur l’efficacité du développement, la productivité de l’équipe, la qualité du code et la maintenabilité à long terme des logiciels dans des environnements professionnels collaboratifs.

Inclus

6 vidéos4 lectures4 devoirs6 laboratoires non notés

Le cours « Bibliothèques externes et IA générative pour la génération de code » vous permet d’améliorer vos compétences en développement en vous apprenant à étendre les fonctionnalités de vos applications grâce à des bibliothèques tierces et à tirer parti des assistants de codage basés sur l’IA moderne afin d’accélérer le développement tout en respectant les normes de qualité professionnelles. Vous apprendrez à découvrir, évaluer et intégrer des bibliothèques C++ externes à l’aide de systèmes de build modernes, notamment CMake, vcpkg, et Conan pour la gestion des dépendances, à comprendre la différence entre la liaison statique et la liaison dynamique ainsi que l’organisation adéquate des fichiers d’en-tête, et à utiliser efficacement des outils d’IA tels que GitHub Copilot, ChatGPT et Claude pour générer des extraits de code, des fonctions et des composants de programme tout en évaluant de manière critique leurs résultats. Grâce à des activités pratiques allant de projets d’intégration de bibliothèques à des workflows de développement assistés par l’IA, vous développerez des compétences en matière de configuration de systèmes de build, de résolution des dépendances, d’assurance qualité pour le code généré par l’IA, d’adaptation et de refactorisation du code, ainsi que de mise en place de pratiques de développement collaboratif qui concilient l’assistance de l’IA et l’expertise humaine. Ces capacités de développement modernes transforment le génie logiciel professionnel — qu’il s’agisse d’intégrer de puissantes bibliothèques pour l’analyse JSON, la communication HTTP ou le rendu graphique, dont la création indépendante prendrait des mois, ou d’utiliser des outils d’IA qui accélèrent les tâches de codage routinières et réduisent le code standardisé tout en vous permettant de maintenir un contrôle critique sur l’exactitude et le style — où votre capacité à tirer parti des solutions existantes, à gérer des dépendances complexes, d’évaluer de manière critique l’assistance de l’IA et d’intégrer des outils modernes dans les flux de travail a un impact direct sur la vitesse de développement, les possibilités en termes de portée des projets, le maintien de la qualité du code et votre compétitivité dans les environnements de développement logiciel contemporains, qui exigent de plus en plus une maîtrise à la fois des bibliothèques externes et des pratiques de codage assistées par l’IA.

Inclus

6 vidéos4 lectures4 devoirs6 laboratoires non notés

Le projet pratique de la formation permet de consolider vos compétences intermédiaires en C++ à travers une expérience finale complète, dans le cadre de laquelle vous concevez et développez une application sophistiquée de traitement de données. Celle-ci intègre la manipulation des tableaux et des chaînes de caractères, les opérations d’entrée-sortie de fichiers, une architecture fonctionnelle modulaire, l’intégration de bibliothèques externes ainsi que des workflows de développement assistés par l’IA, le tout au sein d’une solution cohérente et de qualité professionnelle. Vous passerez par les phases de développement conformes aux normes de l’industrie : conception et planification systématiques avec des spécifications d’architecture détaillées et la sélection des bibliothèques, implémentation, application de tous les concepts de niveau intermédiaire à l’aide d’une IA moderne pour la génération et l’optimisation du code, ainsi que des tests complets, comprenant des tests unitaires, des tests d’intégration et une analyse des performances avec une révision du code assistée par l’IA. Cette expérience de synthèse simule des scénarios de développement de niveau intermédiaire issus du monde réel, tels qu’on les rencontre dans les applications métier, les systèmes de calcul scientifique et les plateformes d’analyse de données, où de multiples compétences techniques doivent s’articuler de manière transparente pour résoudre des problèmes complexes. Le projet aboutit à des livrables professionnels comprenant le code source complet, la documentation technique, les rapports de test, des guides d’utilisation et une analyse de l’intégration de l’IA qui, ensemble, démontrent votre aptitude à relever les défis de la programmation C++ avancée et à occuper des postes de développement logiciel professionnel de niveau intermédiaire, tout en fournissant des preuves dignes d’un portfolio de votre capacité à concevoir, implémenter, tester, documenter et optimiser de manière autonome des applications complètes à l’aide de pratiques de développement modernes qui allient l’expertise humaine à l’assistance de l’IA pour une productivité et une qualité de code maximales.

Inclus

1 vidéo3 lectures1 devoir1 laboratoire non noté

Obtenez un certificat professionnel

Ajoutez ce titre à votre profil LinkedIn, à votre curriculum vitae ou à votre CV. Partagez-le sur les médias sociaux et dans votre évaluation des performances.

Instructeur

 Microsoft
346 Cours2 651 430 apprenants

Offert par

Microsoft

En savoir plus sur Algorithmes

Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?

Felipe M.

Étudiant(e) depuis 2018
’Pouvoir suivre des cours à mon rythme à été une expérience extraordinaire. Je peux apprendre chaque fois que mon emploi du temps me le permet et en fonction de mon humeur.’

Jennifer J.

Étudiant(e) depuis 2020
’J'ai directement appliqué les concepts et les compétences que j'ai appris de mes cours à un nouveau projet passionnant au travail.’

Larry W.

Étudiant(e) depuis 2021
’Lorsque j'ai besoin de cours sur des sujets que mon université ne propose pas, Coursera est l'un des meilleurs endroits où se rendre.’

Chaitanya A.

’Apprendre, ce n'est pas seulement s'améliorer dans son travail : c'est bien plus que cela. Coursera me permet d'apprendre sans limites.’

Foire Aux Questions

¹ Certains travaux de ce cours sont notés par l'IA. Pour ces travaux, vos Données internes seront utilisées conformément à Notification de confidentialité de Coursera.