Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Saubere, effiziente und robuste C++-Software entwickeln mit klassischer Objektorientierung und modernen C++ Sprachmitteln - Der Weg zum Clean Code - Präsenztraining

  • Inhalt
     
  • Ziele -
    Ihr Nutzen
  • Teilnehmer
     
  • Voraussetzungen
     

Sie beherrschen die wichtigsten "Best Practices", um sauberen, performanten und robusten C++-Code neu zu erstellen oder um bestehenden Legacy-Code im Rahmen eines Refactoring-Projekts zu modernisieren.

Software-Entwickler/innen, Software-Architekt/innen

Für die aktive Teilnahme am Praktikum im Workshop-Stil: Sie kennen bereits die Grundlagen der Objektorientierten Programmierung und verfügen über solide Grundkenntnisse in C++. Sie sind vertraut im Umgang mit einer gängigen Entwicklungsumgebung, die C++20 unterstützt. Für die Übungen kann ein eigener Laptop genutzt werden oder Sie arbeiten via Internet Bowser in einem bereitgestellten Online-Workspace.

Optional: Sollten Sie bisher kaum C++ Programmierkenntnisse haben, können Sie darauf verzichten, in den Übungen selbst zu programmieren und sich stattdessen auf einen "Vorher - Nachher" Vergleich desjeweiligen Schritts in Form eines reinen Code-Reviews konzentrieren.

Paradigmen, Muster, Idiome und Best Practices

  • Guter Code von Anfang an
  • Guter Code durch Refactoring
  • Mögliche Motivationsprobleme
  • Versteckte Kosten von schlechtem Code
  • Zielkonflikte und Abwägungen

Grundregeln

  • Wiederholungen vermeiden
  • Offenheit für Erweiterungen
  • Komplexität eingrenzen
  • Modularisierung
  • Testautomatisierung
  • Optimierung nur mit klaren Zielen

C++-spezifische Aspekte

  • Header- und Implementierungsdateien
  • Sprache vs. Bibliotheken und Frameworks
  • Vor- und Nachteile von Templates
  • Welche Rolle spielt die Metaprogrammierung?

Nützliches in der Standard-Bibliothek

  • Kurzüberblick von C++98 zu C++23 STL - Container, Iteratoren, Algorithmen
  • "std::any", "std::variant"
  • "std::tuple" und "structured binding"
  • "std::function"

Klassische Objektorientierung mit C++

  • Kapselung von Daten und Funktionen
  • Geheimnisprinzip und Zugriffsschutz
  • Vererbung, Interfaces, dynamisches Binden
  • Komposition oft besser als Vererbung
  • "SOLID" Prinzipien und mehr (SLA, YAGNI, …)

Kommunikation zwischen Software-Modulen

  • Synchrone und asynchrone Verfahren
  • Prinzip der losen Kopplung und hohen Kohäsion
  • Performance-Steigerung durch Callbacks
  • Vergleich und Bewertung typischer Alternativen (Linker, Zeiger/Referenzen, Interfaces, Templates)

Praktische Übungen im Workshop Stil

  • Projektbasierte Kursstruktur Die praktischen Übungen sind als fortlaufendes Mini-Projekt konzipiert, das sich durch das gesamte Training zieht und aufeinander aufbaut. Jede Einheit dauert etwa 90 bis 120 Minuten, in denen Sie die Bearbeitungsgeschwindigkeit an Ihre individuellen Vorkenntnisse in C++ anpassen können.
  • Unterstützung und Lösungen: Damit Sie stets auf dem richtigen Weg bleiben, stehen Ihnen alle Musterlösungen im Voraus zur Verfügung. So können Sie sicher sein, dass Sie den Anschluss nicht verlieren, auch wenn Sie einmal auf Herausforderungen stoßen. Der Trainer steht jederzeit für Fragen und Hilfestellungen zur Verfügung und unterstützt Sie während der Übungen.
  • Zusätzliche Herausforderungen: Für fortgeschrittene Teilnehmende bietet jeder Schritt zusätzliche, optionale "offene Challenges", um den praktischen Teil des Kurses auch für erfahrene Programmierer/innen spannend und anspruchsvoll zu gestalten.

MicroConsult PLUS

  • Den Code und die Beschreibung der Workshop-Übung erhalten Sie bereits vor dem Training, sodass Sie sich schon vorab mit den zu bearbeitenden Schritten sowie den offenen Challenges vertraut machen können.

Im Preis enthalten:
Mittagessen, Getränke, Trainingsunterlagen und Ihr Teilnahmezertifikat


ALL INCLUSIVE!

Verwandte Trainings

UML-Schulung: UML-Grundlagen und Einstieg in die modellbasierte Softwareentwicklung - Präsenz-Training
Anmeldecode: UML-G

UML-Praxis-Workshop: Praktischer Einsatz modellbasierter Softwareentwicklung für Embedded- und Echtzeit-Systeme - Präsenz-Training
Anmeldecode: UMLPRAX

Software-Architektur-Schulung für Embedded-Systeme und Echtzeitsysteme - Präsenz-Training
Anmeldecode: EMB-AR

Design Patterns Schulung (nicht nur) für Embedded-Systeme - Präsenz-Training
Anmeldecode: DP

C++ Schulung für Ein- und Umsteiger: Grundlegende Programmiertechniken für C++ Entwickler - Präsenz-Training
Anmeldecode: C++

C++ Schulung für Fortgeschrittene: Aufbauwissen für C++ Entwicklerinnen und Entwickler - Präsenz-Training
Anmeldecode: C++/FOR

Embedded C++: Objektorientierte Programmierung für Mikrocontroller mit C++/EC++ und UML - Präsenz-Training
Anmeldecode: EC++

C# .NET Training: C# Programmierung unter .NET - Präsenz-Training
Anmeldecode: C#-PRG

Coaching: Qualität im Programmcode
Anmeldecode: C-QU-PRG

Coaching: Software-Analyse, -Design und -Architektur
Anmeldecode: C-ADA-SWE

Coaching: Embedded- und Echtzeit-Programmierung
Anmeldecode: C-EMB-PRG

Coaching: Programmiersprachen
Anmeldecode: C-PRG-LAN


Verwandte Trainings

Präsenz-Training

TerminPreis *Dauer
30.06. – 02.07.20251.950,00 €3 Tage 
06.10. – 08.10.20251.950,00 €3 Tage 
Anmeldecode: OOPFC++
* Preis je Teilnehmer, in Euro zzgl. USt.
> Download Blanko-Anmeldeformular> Trainingsbeschreibung als PDF

Onsite-Training

In maßgeschneiderten Workshops kombinieren wir Ihre konkreten Projektaufgaben mit unserem Trainingsangebot. Dabei berücksichtigen wir Ihre Anforderungen bezüglich Inhalt, Zeit, Ort, Dauer, technischem Umfeld und Vermittlungsmethodik.

Für Ihre Anfrage oder weiterführende Informationen stehen wir Ihnen gern zur Verfügung.

> Trainingsbeschreibung als PDF

Live-Online - Deutsch

Termin Dauer
02.02. – 04.02.2026 3 Tage  

Präsenz-Training - Englisch

Dauer
5 Tage  

Coaching

Unsere Coaching-Angebote bieten den großen Vorteil, dass unsere Experten ihr Wissen und ihre Erfahrungen direkt in Ihren Lösungsprozess einbringen und damit unmittelbar zu Ihrem Projekterfolg beitragen.

Coaching: Programmiersprachen

Saubere, effiziente und robuste C++-Software entwickeln mit klassischer Objektorientierung und modernen C++ Sprachmitteln - Der Weg zum Clean Code - Präsenztraining

Inhalt

Paradigmen, Muster, Idiome und Best Practices

  • Guter Code von Anfang an
  • Guter Code durch Refactoring
  • Mögliche Motivationsprobleme
  • Versteckte Kosten von schlechtem Code
  • Zielkonflikte und Abwägungen

Grundregeln

  • Wiederholungen vermeiden
  • Offenheit für Erweiterungen
  • Komplexität eingrenzen
  • Modularisierung
  • Testautomatisierung
  • Optimierung nur mit klaren Zielen

C++-spezifische Aspekte

  • Header- und Implementierungsdateien
  • Sprache vs. Bibliotheken und Frameworks
  • Vor- und Nachteile von Templates
  • Welche Rolle spielt die Metaprogrammierung?

Nützliches in der Standard-Bibliothek

  • Kurzüberblick von C++98 zu C++23 STL - Container, Iteratoren, Algorithmen
  • "std::any", "std::variant"
  • "std::tuple" und "structured binding"
  • "std::function"

Klassische Objektorientierung mit C++

  • Kapselung von Daten und Funktionen
  • Geheimnisprinzip und Zugriffsschutz
  • Vererbung, Interfaces, dynamisches Binden
  • Komposition oft besser als Vererbung
  • "SOLID" Prinzipien und mehr (SLA, YAGNI, …)

Kommunikation zwischen Software-Modulen

  • Synchrone und asynchrone Verfahren
  • Prinzip der losen Kopplung und hohen Kohäsion
  • Performance-Steigerung durch Callbacks
  • Vergleich und Bewertung typischer Alternativen (Linker, Zeiger/Referenzen, Interfaces, Templates)

Praktische Übungen im Workshop Stil

  • Projektbasierte Kursstruktur Die praktischen Übungen sind als fortlaufendes Mini-Projekt konzipiert, das sich durch das gesamte Training zieht und aufeinander aufbaut. Jede Einheit dauert etwa 90 bis 120 Minuten, in denen Sie die Bearbeitungsgeschwindigkeit an Ihre individuellen Vorkenntnisse in C++ anpassen können.
  • Unterstützung und Lösungen: Damit Sie stets auf dem richtigen Weg bleiben, stehen Ihnen alle Musterlösungen im Voraus zur Verfügung. So können Sie sicher sein, dass Sie den Anschluss nicht verlieren, auch wenn Sie einmal auf Herausforderungen stoßen. Der Trainer steht jederzeit für Fragen und Hilfestellungen zur Verfügung und unterstützt Sie während der Übungen.
  • Zusätzliche Herausforderungen: Für fortgeschrittene Teilnehmende bietet jeder Schritt zusätzliche, optionale "offene Challenges", um den praktischen Teil des Kurses auch für erfahrene Programmierer/innen spannend und anspruchsvoll zu gestalten.

MicroConsult PLUS

  • Den Code und die Beschreibung der Workshop-Übung erhalten Sie bereits vor dem Training, sodass Sie sich schon vorab mit den zu bearbeitenden Schritten sowie den offenen Challenges vertraut machen können.