Formation C++ tooling

Transformez votre base de code obsolète en C++ moderne, sans tout casser. Apprenez à migrer progressivement jusqu'à C++23 en gardant la stabilité de vos projets existants.

Formation C++ tooling

Description

Cette formation Moderniser votre code C++ hérité vous permettra de transformer vos bases de code existantes vers un C++ moderne, robuste et maintenable, sans risquer la casse.

Au cours de cette journée de formation, vous apprendrez à :

  • connaître les grandes évolutions de C++ (de C++11 à C++23/26),
  • appliquer les pratiques de développement qui améliorent la lisibilité de votre code,
  • gérer la sécurité mémoire,
  • assurer la maintenabilité de votre code (auto, smart pointers, lambdas, ranges, std::expected), et
  • diagnostiquer les idiomes obsolètes et à utiliser les bons outils pour une migration progressive et sécurisée (tests, clang-tidy, cppinsights)

Public :

Cette formation s’adresse aux développeur·euse·s C++ avec du code legacy (C++98/03/11), aux équipes techniques modernisant un projet long terme,et aux responsables techniques en quête de robustesse et maintenabilité.

Les objectifs

  • Identifier les idiomes C++ obsolètes dans votre code
  • Refactorer avec auto, lambdas, smart pointers, ranges, coroutines, etc.
  • Améliorer lisibilité, sécurité mémoire et maintenabilité
  • Utiliser les outils modernes pour migrer sans risque

Pré-requis

  • Être à l’aise avec les bases de la programmation C++ (fonctions, classes, pointeurs)
  • Ordinateur portable à apporter

Le programme de la formation C++ tooling

  • Panorama de l’évolution du C++ : de 98 à 26
    • Présentation chronologique des évolutions majeures du langage (C++98 à C++26)
    • Quels standards sont en usage aujourd’hui ? Pourquoi migrer ?
    • Étude d’un exemple de code qui évolue progressivement à travers les versions
    • Points de bascule clés : C++11 (RAII étendu), C++17 (expressivité), C++20 (déclarativité)
    • Présentation interactive et démonstration live de code évolutif
  • Diagnostiquer le code hérité
    • Reconnaître les idiomes obsolètes (raw pointers, typedefs, macros)
    • Définir une stratégie de refactoring incrémental
  • C++11/14 – La révolution silencieuse
    • auto, nullptr, enum class, using
    • Pointeurs intelligents (unique_ptr, shared_ptr)
    • Move semantics
    • Lambdas simples et génériques
    • constexpr, decltype, templates variadiques
  • C++17 – Expressivité & simplification
    • if constexpr, inline variables
    • structured bindings
    • std::optional, std::variant, std::any
    • Fonctions STL améliorées & algorithmes parallèles
  • C++20 - Vers la programmation déclarative
    • Concepts & contraintes
    • Ranges et views::filter, transform
    • Coroutines (intro)
    • consteval, opérateur spaceship, modules
  • C++23 - Vers la programmation déclarative :
    • std::expected pour la gestion d’erreurs
    • Améliorations de optional, variant, mdspan
  • Stratégie de migration progressive
    • Utiliser clang-tidy, cppinsights, include-what-you-use
    • Ajouter des tests avant refactorisation
    • Refactorer par modules/test et en toute sécurité

Mises en pratique :
- Analyse de code legacy fourni
- Modernisation d’une classe legacy
- Amélioration d’une API avec optional & variant
- Écrire une API moderne avec concepts + expected
- Retour d’expérience et revue de code client (optionnel)

Télécharger le programme

Formateur

Arnaud BECHELER

Arnaud Becheler, docteur en écologie évolutive et expert en C++, s'est forgé une réputation unique en associant ses compétences scientifiques à une expertise technique pointue. Spécialisé dans la conception de modèles prédictifs et de simulations en C++, il a utilisé son expertise pour modéliser des dynamiques écologiques complexes.

Outre ses contributions scientifiques, Arnaud continue d'enrichir la communauté open-source avec ses projets en C++. Ses outils logiciels ont été présentés lors de conférences internationales et approuvés par de nombreux experts du domaine. Passionné par le partage des connaissances, il a organisé de nombreux workshops et conférences sur des sujets liés au C++ et au machine learning.

Arnaud est un membre très actif dans la communauté C++, il organise notamment des meetups et partage ses connaissances lors de conférences internationales.

Avec plus de 10 ans d'expérience, il intervient aujourd'hui en tant que consultant, offrant son savoir-faire en intelligence artificielle, machine learning et architectures logicielles.

FAQ

Nos formations sont éligibles à plusieurs dispositifs de financement, selon votre situation. Human Coders est certifié Qualiopi, ce qui permet la prise en charge par des organismes comme Pôle emploi, votre OPCO ou encore le CPF (Compte Personnel de Formation) pour certaines formations.

Pour en savoir plus, veuillez consulter notre page : Comment financer votre formation ?

Oui, la formation peut être proposée en présentiel ou en distanciel. Pour les inter-entreprises, les modalités (présentiel ou à distance) sont fonction de la session.

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Les formations se déroulent toujours en petit groupe de 3 à 6 stagiaires. Nous souhaitons que les formateurs et formatrices puissent passer un maximum de temps avec chacun·e.

Voici une journée type :

  • 9h : vous êtes accueillis par votre formateur·rice autour d'un petit déjeuner (croissants, pains au chocolat, jus de fruit, thé ou café...)
  • 9h30 : la formation commence
  • 12h30 : pause de midi. Le·a formateur·rice mangera avec vous. C'est l'occasion d'avoir des discussions plus informelles.
  • 14h : reprise de la formation
  • 18h : fin de la journée

8 raisons de participer à une formation Human Coders

  • Satisfaction client élevée : Un taux de statisfaction de 4,6/5 depuis 2012 (sur 1696 sessions réalisées). 99% des participants se disent satisfaits de nos formations
  • Approche pédagogique unique : Des formations en petit groupe, des formateurs passionnés et expérimentés, de véritables workshops... (Plus d'infos sur notre manifeste)
  • Catalogue de formations complet : 177 formations au catalogue, de quoi vous accompagner sur tout vos projets
  • Écosystème dynamique : Nous accompagnons les dev depuis 13 ans avec des initiatives comme Human Coders News, les Human Talks, le podcast ou encore notre serveur Discord
  • Financement facilité : Organisme certifié Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • Références clients prestigieuses : De nombreux clients qui nous font confiance depuis des années
  • Accompagnement sur mesure : Nous vous proposons un accompagnement personnalisé par nos consultants pour vous aider dans vos projets au-delà de la formation
  • Valorisation professionnelle : Remise d'un diplôme, d'une attestation et d'une certification, suivant les formations effectuées, que vous pourrez afficher sur vos CV et réseaux sociaux

* Nombre de personnes ayant répondu au questionnaire de satisfaction sur cette formation depuis 2012