Le Langage C++ pour l’Embarqué
Pour connaitre les prochaines sessions de formation en Logiciel embarque et programmation cliquez ici.
C++ fait partie des langages indétrônables, le classement TIOBE le positionne depuis des années dans les langages les plus utilisés dans l’industrie. Ceci s’explique par la puissance du langage objet, sa polyvalence, et par ses performances d’exécution.
Cette formation, vous propose de découvrir le langage avec un focus sur son utilisation spécifique sur les systèmes embarqués.
De nombreux exercices illustrent chaque chapitre afin de mettre en pratique les notions abordées en cours.
OBJECTIFS
Assimiler les concepts objets
Découvrir et mettre en œuvre le langage C++ dans les projets
Acquérir un début d’autonomie dans ce langage
PUBLIC VISE
Concepteurs, Développeurs d’applications connaissant un langage et débutants en C++.
PREREQUIS
Première expérience en développement informatique. La connaissance du « langage C » est un plus mais n’est pas obligatoire.
Un PC avec webcam, haut-parleur et micro et une liaison Internet sont requis.
INTERVENANT
Expert des systèmes en réseau : infrastructure de réseau, sécurité, développements d’application en réseau - Expert des systèmes embarqués : développements d’application sur systèmes embarqués, IoT, M2M.
Le programme CAP’TRONIC aide, chaque année, 400 entreprises à monter en compétences sur les technologies liées aux systèmes électroniques et logiciel embarqué.
PRIX
Non-adhérent : 1 000 € HT
Adhérent CAP’TRONIC : 800 € HT
LIEU
Formation à distance : les accès à un outil informatique en ligne adapté seront fournis au stagiaire avant le démarrage de la formation.
PROGRAMME
Accueil – TOUR DE TABLE
1 Le langage C++ - introduction
> Historique
> Comparaison aux autres langages
> Utilisation de ce langage dans l’industrie
> Norme et version de C++ (C++98 • C++03 • C++11 • C++14 • C++17 • C++20)
> Nouvelles fonctionnalités du langage
2 Compilateur
> Compilateur open source GCC/G++
> Compilateur croisé x86/ARM
> Linkage dynamique et statique
> Débogage
> Makefile
> TP : utilisation du compilateur (ligne de commande, option, création d’un make, débogage de code)
3 Types, Constantes, Variables
> Références et Pointeurs
> Déclaration, portée
> Initialisation
> Tableau : déclaration, initialisation
> Espace de nommage
> Allocation dynamique
> TP sur les références et pointeurs, allocation dynamique, espace de nommage
4 Notion d’objet
> Du C vers C++, Classes et Objets
> Protection, Accès
>Variable d’instance, Constructeur, Destructeur
> Surcharge
> Opérateur “This”
> Objet et modélisation UML/SysML
> Génération de code automatique
> TP sur l’héritage, la sécurité, les constructeurs et destructeurs
5 Classes dérivées
> Héritage et instanciation
> Amis
> Classe virtuelle
> Héritage multiple
> TP sur l’utilisation de l’héritage simple et multiple, mise en œuvre des classes virtuelles
6 Surcharge des Opérateurs
> Opérateur Functions
> Surcharge
> Fonction amie, Classe amie
> TP sur la surcharge des opérateurs
7 Contrôle de flux
> Entrées, Sorties
> État, Surcharge
> Gestion de fichier
> TP sur l’entrée clavier, gestion de fichier.
8 Exceptions
> Définition d’une exception
> Interception
> TP : utilisation des exceptions standards, création d’une exception 8 Structure de données et STL
> Vecteur, Map, List, Pile
> Algo standard
> TP : utilisation des Vecteurs, Map, List, Pile et algorithme standard
9 Structure de données et STL
> Vecteur, Map, List, Pile
> Algo standard
> TP : utilisation des Vecteurs, Map, List, Pile et algorithme standard
10 Particularité du C++ embarqué
> Librairie std
> Compilation et linkage
> Règles de codage spécifique
> Classe virtuelle
11 Multithreading
> Attribut thread_local
> Classe thread, mutex
> Sémaphore vs Mutex
> Conditions, Verrous, future et promise
> Opérateur et opération atomique
> TP : Structure d’un programme multithread, section critique, opérateur atomique, variable partagée
12 Smart Pointers
> Dépréciation de auto_ptr
> unique_ptr,
> shared_ptr
> weak_p
> TP : mise en œuvre des smart pointer avec plusieurs exercices
13 Principe sur les templates
> Notion de programmation générique
> Classe de modèles
> Fonctions de modèles
> TP de programmation template
14 Nouveaux conteneurs de la librairie standard
> array
> tuple - pair
> unordered_multimap
> unordered_multiset
> unordered_map
> unordered_set
> TP de mise en œuvre sur les nouveaux conteneurs
15 Outils de développement
> code : blocks
> Eclipse
> Jetbrains
Synthèse de la journée
Clôture - TOUR DE TABLE
ORGANISATION
Moyens pédagogiques : Outil de visioconférence - Support de cours - Travaux pratiques. Assistance pédagogique sur le cours assurée par le formateur pendant 1 mois à l’issue de la formation.
Moyen permettant d’apprécier les résultats de l’action : Evaluation de l’action de formation par l’envoi d’un questionnaire de satisfaction à chaud à l’issue de la formation, puis d’un questionnaire à froid quelques semaines après la formation.
Moyen permettant de suivre l’exécution de l’action : Evaluation des connaissances via un questionnaire avant et après la formation.
Sanction de la formation : Attestation d’assiduité
Jessica France est titulaire d’un numéro d’agrément de formation continue et est référencé DATADOCK depuis le 1er juillet 2017. Cette formation est éligible au financement par votre Opérateur de Compétences (OPCO) hors CPF.
RENSEIGNEMENTS ET INSCRIPTION
Sophie BASSE-CATHALINAT, cathalinat@captronic.fr - 06 79 49 15 99
Pour toute question y compris les conditions d’accès pour les publics en situation de handicap.
Les inscriptions sont closes. Pour connaitre les prochaines sessions de formation en Logiciel embarque et programmation cliquez ici.
Informations mises à jour le 24/03/2023