Logo de la rubrique Le  Langage C++ pour l’embarqué

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. C++ est disponible sur toutes les plateformes et également dans l’embarqué. Cette formation, vous propose dans un premier temps l’apprentissage du 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.
Mots clés : C++, POO, langage objet, systèmes embarqués

OBJECTIFS

Assimiler les concepts objets
Mettre en œuvre le langage ++ dans les projets
Découvrir les nouveautés du langage
Acquérir une vraie autonomie dans ce langage

PUBLIC VISE

Concepteurs, Développeurs d’applications débutants à intermédiaires 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, - Expert des systèmes spatiaux : analyse et développements des systèmes spatiaux nanosatellites, Expert en développement de systèmes mobiles, Modélisation des systèmes.

PRIX

Non-adhérent : 1 500€ HT
Adhérent CAP’TRONIC : 1 200€ HT

LIEU

Formation à distance : Les accès à un outil informatique en ligne adapté seront fournis au stagiaire avant le démarrage de la formation. Aucun logiciel spécifique n’est à installer. Seule une connexion à Internet est requise

PROGRAMME

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 oeuvre 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’un exception
> Interception
> TP : utilisation des exceptions standards, création d’une exception

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
> Classe 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

ORGANISATION

Moyens pédagogiques : Outil de visioconférence - Support de cours - Etude de cas – Assistance pédagogique assurée par le formateur pour une durée de 2 mois suivant 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é

RENSEIGNEMENTS ET INSCRIPTION

Florence CAGNARD, cagnard@captronic.fr - 01 69 08 60 54
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 29/10/2021