Dawan is a training organisation that offers more than 2000 training courses in IT, management, project management and sales in instructor-led live online or on-site trainings. We have 11 centres in France and we have developed partnerships with local structures in Brussels, Luxembourg and Geneva. Our catalogue includes hundreds of topics: Java, PHP, Webmaster, E-Marketing, Linux, Windows Server, Vmware, Autocad, Photoshop, IA etc. Our courses have been created and designed by in-house trainers who have over 20 years of teaching experience. Constantly renewed, they are adapted to the requirements of our customers and to the evolution of technologies.
The content of this page is not available in English
Tous
Notions de C++
Apprendre les nouveautés du C++
Le littéral nullptr et les types normalisés (uint_8, uint64_t, …), les littéraux et séparateursInférence de types et de signatures avec autoVariables templates (C++ 14)Initialisation uniforme des variables, de tableaux et des conteneursParcours unifié des tableaux et conteneurs avec La boucle "range based" forListes d’initialisation avec initializer_listÉnumérations fortement typées (C++11/17)Littéraux personnalisésAmélioration du contrôle de flux avec les Init-statements (C++17/20)L’opérateur sizeof appliqué aux membres d’un objet ou d’une classeContrôle de l’alignement mémoireL'opérateur decltypeDéconstruction avec les structured bindings (C++17)Les spécificateurs de classe (override, default, delete, final)Constructeur délégué et constructeur héritéInitialisation de membresConstructeur explicite multi-paramétréAbraham’s Exception safety guarantees et la clause noexceptDonnées inlineMétaprogrammation avec constexprLes spécificateurs consteval et constinit (C++20)Les attributs (C++11/17/20)L’opérateur de comparaison " Three Way " <=> (C++20)Paramètres nommés pour la construction des structures (C++20)Améliorations apportées aux fonctions génériques et aux lambdas (C++17/20)
Les nouveaux itérateursLes tableaux à taille fixe avec std::arrayLa classe std::string_view (C++ 17)La classe std::span (C++ 20)Nouveautés de la classe std::string (C++17)Les classes std::variant, std::any et std::optional (C++17)Les nouvelles collections associatives: unordered_map/set et hashSingly-Linked ListsLe conteneur tupleLes nouveaux algorithmes ensemblistesGestion du temps, l’espace de nom chronoGénérateurs / distributions de nombre aléatoiresLa librairie Ranges, les vues et les adaptateurs de vues (C++20)Pipelining avec les nouveaux algorithmes sur vues (C++20)Sorties formattées avec std::format et les placeholders (C++20)Constructeurs constexpr des conteneursLa librairie filesystem (C++17)
Copie versus déplacementValue et RValue referenceLa fonction std::moveMove constructor et move assignment operatorComplétude étendue des classesR-value reference et STLSTL C++11 et swap / moveSignature reference qualifiersPerfect forwarding avec std::forwardRéférences forward et collapsingCopy elision et Guaranted RVO (C++17)
L’idiome RAII (Resource Acquisition Is Initialization)Propriété et transfert de responsabilitéLa classe unique_ptrComptage de références avec la classe shared_ptrCustom deleterLes fonctions make_unique et make_sharedLa classe weak_ptr et le référencement circulaire
Problématique de l’abonnementPointeur de function / méthode / membre statiqueLes classe function et mem_fnBinding, placeholdersAdaptateurs de références
Typage multiple avec les mixinsParamétrage et spécialisation des méthodesHéritage / containment et généricitéMétaprogrammationL’idiome CRTP Curiously Recursive Template PatternTypologie C++ et classes de traitsAssertions statiques avec static_assertExtended friend declarationLes variadic templates, pattern matching et héritage multipleConstexpr_if (C++17)Implémentation générique du pattern visitor avec std::visit (C++17)Définition de contrats génériques avec les concepts (C++20)Mise en œuvre de contraintes avec requires (C++20)Concepts prédéfinis de la librairie standard (C++20)
Unités d’interface et d’implémentationSous modules et partitionsModule linkage
Démarrage et détachement d’un threadThreads et gestion des exceptionsLa classe std::call_onceL’espace de noms this_threadFutures / promises et packaged_taskLes futures, politique de démarrage (parallèle ou asynchrone) et gestion des exceptionsPartage de ressources et mécanismes de synchronisationMutexes données atomiques (C++11/20)Unique-lock et lock_guardLa classe std::jthread (C++20)Synchronisation avec les sémaphores et les mécanismes latches et barriers (C++ 17/20)Flux de sortie synchronisés (C++ 20)
Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.
Contrôle continu
Attestation de fin de stage mentionnant le résultat des acquis
Sources des exercices + Support papier