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.

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

info portfolio