C++ Scientifique Moderne Présentiel
Dernière mise à jour : 06/10/2025
Description
1er jour
- Problèmes centraux du C++ ancien et bonnes pratiques qui y répondent, devenues des nouveautés syntaxiques du C++ moderne, notamment :
- problèmes de nombres, initialisation uniforme, inférence de type
- problèmes de pointeurs, RAII, pointeurs améliorés, références doubles
- problèmes de classes, fonctions par défaut, objets-fonctions, lambdas
- problèmes de templates, alias et variables génériques, expressions constantes
2ème jour
- Bibliothèque standard, nouvelles bonnes pratiques, styles de programmation et dernières nouveautés syntaxiques du langage, notamment :
-
- programmation générique, méta-fonctions, templates variadiques, concepts
- programmation fonctionnelle, tuples, variants, optionels et attendus, plages
- programmation concurrente, fils, exécution asynchrone, stratégies d'exécution
3ème jour
- Thèmes spécifiques au calcul scientifique, avec focus sur les outils spécifiques du C++ :
- rudiments de profilage avec time, chrono, QuickBench, BuildBench
- rudiments d'optimisation, coût des conditions, AoS vs SoA, tableaux en tout genre
- rudiments de calcul flottant, nombres aléatoires, coût des fonctions mathématiques
- et si on donnait des unités à nos valeurs ?
Objectifs de la formation
- Réviser les limites du langage C++ dans ses versions 98 et 03
- Pratiquer les nouveautés syntaxiques de C++ versions 11,14,17 et 20
- Explorer la bibliothèque standard par l'exemple
- Reconnaître les problématiques spécifiques du calcul scientifique
Public visé
Prérequis
Modalités pédagogiques
Moyens et supports pédagogiques
Les supports de cours sous forme de Jupyter Notebooks, ainsi que les énoncés et les corrections des travaux pratiques seront mis à disposition du participant en anglais.
ÉQUIPEMENT : Supercalculateur Jean Zay de l'IDRIS ; salle informatique avec mise à disposition d'un ordinateur par participant.
Modalités d'évaluation et de suivi
Formateurs
ABRAMKINA Olga
Génie logiciel Intelligence artificielle Science des données Cybersécurité
Responsable scientifique
CHAMONT David
Génie logiciel Intelligence artificielle Science des données Cybersécurité
HASNAOUI Karim
Cybersécurité Génie logiciel Intelligence artificielle Science des données
PADIOLEAU Thomas
Cybersécurité Génie logiciel Intelligence artificielle Science des données