Embedded C++ Grundkurs
TAE - Technische Akademie Esslingen e.V.Beschreibung
Programme für embedded Anwendungen sind oft durch besondere Anforderungen gekennzeichnet. Sie haben oft nur einen kleinen Speicher, sollen besonders schnell und zuverlässig sein und dürfen keinen Heap verwenden, damit es nicht zu einer Speicherfragmentierung kommt. Traditionellerweise werden embedded Programme oft in C geschrieben. Mit der Weiterentwicklung der Compiler hat C++ heute in Bezug auf Codegröße und Geschwindigkeit aber keine Nachteile mehr gegenüber C. Dazu tragen auch viele neue Sprachelemente von C++11, C++14, C++17 und C++20 bei, zu denen es in C keine Alternativen gibt und die zu schnellerem und kleinerem Code führen als mit C. Eines der wichtigsten Argumente für C++ ist jedoch, dass Programme für eingebettete Anwendungen immer größer und komplexer werden. Diese Komplexität ist mit den Mitteln von C oft nur noch schwer zu bewältigen. Hier bietet C++ enorme Vorteile, die Entwicklungskosten sparen und zur Zuverlässigkeit der Anwendungen beitragen.
Das Seminar stellt grundlegende Sprachelemente und -konzepte von C++ (z.B. objektorientierte Programmierung) unter dem Gesichtspunkt der besonderen Anforderungen an embedded Systeme vor und vergleicht sie mit C-Alternativen. Ein Schwerpunkt liegt auf den neuen Sprachelementen von C++11, C++14, C++17 und C++20, die für embedded Systeme viele Vorteile haben. Neben Sprachelementen werden auch AUTOSAR C++14 und MISRA Regeln für sicherheitsrelevante Systeme betrachtet.
HINWEIS Der Embedded C++ Grundkurs (VA Nr. 35508) und der Embedded C++ Aufbaukurs (VA Nr. 35313) sind aufeinander abgestimmt. Beide Kurse sind zusammen eine Einführung in die Programmierung von embedded Anwendungen mit C++. Sie richten sich insbesondere an C-Programmierer, die auf C++ umsteigen wollen.
Softwareentwickler, Projektleiter, Testingenieure und Entscheider, die die Vorteile von C++11, C++14, C++17 und C++20 und der objektorientierten Programmierung für embedded Systeme nutzen wollen. Gute Kenntnisse in der Programmiersprache C werden vorausgesetzt.
Montag, 23. bis Donnerstag, 26. Oktober 2023
9.00 bis 12.15 und 13.45 bis 17.00 Uhr
Embedded Systeme
– Einsatzbereiche und Besonderheiten
– spezielle Anforderungen bei embedded Anwendungen
– Überblick: C und C++ im Vergleich
Elementare Datentypen und Anweisungen
– Ganzzahldatentypen fester Breite
– Trennzeichen bei Zahlliteralen und binäre Literale
– Typ-Inferenz: Implizite Typzuweisungen mit auto
– sichere Konversionen mit Initialisierungslisten
– inline Variablen, insbesondere static inline Datenelemente
– Wert- und Referenzparameter
– Konstanten mit const und constexpr
– constexpr-Funktionen, consteval und constinit
– Init statement für if/switch
– bedingte Kompilation mit if constexpr
– stark typisierte Aufzählungstypen
– Arrays im Stil von C und std::array
Zeiger und Smart Pointer
Namespaces
Überladene Funktionen und Operatoren: mit überladenen new- und delete-Operatoren memory-leaks finden
Objektorientierte Programmierung
– Klassen
– Elementfunktionen und der this-Zeiger
– Datenkapselung
– Konstruktoren und Destruktoren
– Elementinitialisierer
– Standardkonstruktor, Kopierkonstruktor, Zuweisungsoperator
– Angaben =delete und =default
– konvertierende und explizite Konstruktoren
– statische Klassenelemente
– Vererbung und Komposition
– verdeckte Elemente
– virtuelle Funktionen und Polymorphie
– rein virtuelle Funktionen und Interface-Klassen
– R-Wert Referenzen und Move-Semantik
Infos anfordern
Kontaktinformation TAE - Technische Akademie Esslingen e.V.
TAE - Technische Akademie Esslingen e.V.
TAE - Technische Akademie Esslingen e.V.

TAE – Berufliche Fort- und Weiterbildung
Die Technische Akademie Esslingen (TAE) gehört seit mehr als 65 Jahren zu den bedeutendsten Anbietern für berufsvorbereitende und berufliche Qualifizierungen Deutschlands. Die TAE deckt mit jährlich rund 1.000 Veranstaltungen in 17 verschiedenen Themenbereichen nahezu jedes Feld ab, zu dem man sich...
IT-Weiterbildung leicht gemacht
Virtuelle Workshops und IT-Fachtrainings von Experten für Profis.