Cours de base en C++ embarqué

Avec de nombreux exemples et exercices pratiques

On Demand

  : 9h00 - 17h00

Début : À partir de 2025

Fin : 2025

Durée :3,0 jours

Numéro de l'événement : CEE0H.00.00I

         Au Choix


Share

à partir de
£ AIC0,00 euro
(hors TVA)

Programme et Objectif du Séminaire : Embedded C++

Les programmes embarqués nécessitent des solutions optimisées pour répondre à des contraintes de mémoire, de vitesse et de fiabilité. Le C++ moderne (versions 11, 14, 17, et 20) offre des avantages significatifs par rapport au C traditionnel, notamment pour des applications complexes et critiques.

Ce séminaire vise à :

  1. Introduire les concepts clés du C++ (comme la programmation orientée objet) adaptés aux systèmes embarqués.
  2. Mettre en lumière les nouveautés des versions C++11 à C++20, qui améliorent la performance et réduisent les coûts de développement.
  3. Appliquer les règles MISRA, essentielles pour les systèmes embarqués liés à la sécurité.

Public Concerné

  1. Programmeurs C souhaitant migrer vers C++.
  2. Ingénieurs logiciels, développeurs, et experts en applications embarquées.

Remarque

Ce séminaire de base (VA n° 35508) est complémentaire au cours avancé Embedded C++ (VA n° 35313). Ensemble, ils offrent une formation complète sur la programmation C++ pour applications embarquées.

Pré-requis Techniques pour Participer à Nos Formations en Ligne

Nos formations reposent sur des plateformes entièrement accessibles via un navigateur , éliminant ainsi le besoin d’installer un logiciel supplémentaire. Pour garantir une expérience optimale, veuillez vous assurer de disposer des éléments suivants :

  • 🌐 Connexion Internet stable : une ligne DSL d’au moins 6000 est nécessaire, avec une connexion par câble LAN fortement recommandée pour une meilleure fiabilité.
  • 🌍 Navigateur compatible et à jour : utilisez Firefox, Google Chrome, Edge ou Safari. Veuillez noter qu’Internet Explorer n’est pas pris en charge.
  • 💻🎧 Équipement audio et vidéo : un ordinateur (PC ou portable) équipé de haut-parleurs ou écouteurs, d’un microphone et d’une webcam fonctionnels.

Avec ces conditions techniques en place, vous pourrez profiter pleinement de nos sessions interactives et enrichissantes en ligne.

Programme détaillé : Embedded C++ – Concepts et Pratiques

1. Introduction aux systèmes embarqués

  1. Domaines d’application : Exemples pratiques et tendances.
  2. Exigences spécifiques : Contraintes de mémoire, vitesse, et fiabilité.
  3. Comparatif C vs C++ : Forces et faiblesses selon les cas d’usage.
  4. Cartes microprocesseurs : Présentation des plateformes, exemple STM32.

2. Types de données et instructions élémentaires

  1. Types de données entiers à largeur fixe : Adaptés aux contraintes matérielles.
  2. Littéraux numériques et binaires : Séparateurs pour une meilleure lisibilité.
  3. Inférence de type : Gestion implicite avec auto.
  4. Listes d’initialisation et conversions : Approche sécurisée pour éviter les erreurs.
  5. Opérations sur les bits : Manipulations efficaces pour applications matérielles.
  6. Bibliothèques C et C++ : Utilisation optimale et gestion des dépendances.
  7. Constantes avancées : const, constexpr, consteval, et constinit.
  8. Tableaux et conteneurs : Différences entre C-style arrays, std::array, et std::vector.
  9. Gestion des interruptions : Pointeurs de fonction et ISRs.
  10. Pointeurs intelligents : Sécurité mémoire avec std::unique_ptr et std::shared_ptr.

3. Espaces de noms et surcharges

  1. Utilisation efficace des espaces de noms pour organiser le code.
  2. Surcharges avancées : Fonctions, opérateurs, et opérateurs de création/suppression.
  3. Littéraux personnalisés : Simplification des types complexes.

4. Programmation orientée objet (POO)

  1. Cours et encapsulation : Fonctionnement des fonctions membres et du pointeur this.
  2. Constructeurs et destructeurs : Approches modernes, règles du zéro/cinq.
    1. Constructeur de copie, opérateur d’affectation, spécifications =delete et =default.
  3. Objets constants et fonctions membres constantes : Maintien de l’intégrité des données.
  4. Héritage et composition : Gestion des hiérarchies et relations entre classes.
  5. Polymorphisme : Fonctions virtuelles, classes d’interfaces, et héritage multiple.

5. R-Values et sémantique de déplacement

  1. Gestion avancée de la mémoire : Références de valeur R et move semantics.
  2. Optimisation : Sémantique de déplacement pour classes personnalisées et standard.

Objectif de la formation

  1. Maîtriser les bases du C++ moderne (C++11 à C++20) adaptées aux systèmes embarqués.
  2. Comprendre les concepts clés de la programmation orientée objet et leurs applications dans des environnements contraints.
  3. S’initier aux meilleures pratiques pour optimiser les performances tout en assurant la fiabilité des programmes.

Ce programme fournit des bases solides pour la transition vers des applications embarquées complexes tout en bénéficiant des innovations offertes par C++.

Public cible

Ce séminaire est destiné aux :

  • Développeurs de logiciels souhaitant étendre leurs compétences en C++ pour les systèmes embarqués.
  • Chefs de projet qui doivent comprendre les implications des technologies C++ modernes sur le développement des systèmes embarqués.
  • Ingénieurs de test intéressés par les nouvelles pratiques de développement et d’optimisation des performances dans un environnement embarqué.
  • Décideurs qui doivent prendre des décisions éclairées sur l’utilisation du C++ et de la programmation orientée objet dans les projets embarqués.

Prérequis

Une bonne connaissance du langage de programmation C est requise, car le séminaire fait une comparaison entre C et C++ et se concentre sur l’application des concepts C++ modernes (C++11 à C++20) dans le contexte des systèmes embarqués.

Détails de la participation

La participation au séminaire comprend :

  • Repas pendant la durée du séminaire.
  • Documentation détaillée couvrant tous les aspects du programme, pour une consultation future.

Prix de la participation

Les frais de participation sont de :
AIC0,00 € (hors TVA).

Shopping Basket