C++ Quick Refresh: Schnelleinstieg/Auffrischung - Präsenz-Training
In den vergangenen 30 Jahren schon oftmals totgesagt, ist C++ nach wie vor in vielen Softwareprojekten im Einsatz - teils im Rahmen einer bestehenden Code-Basis, aber auch oft für Neuentwicklungen (z.B. im Embedded-Linux-Umfeld).
Dieses Training frischt grundlegende C++-Kenntnisse auf bzw. vermittelt solche Kenntnisse im Schnelleinstieg an Softwareentwickler, die bereits über solide, praxisgestützte Erfahrungen in anderen Programmiersprachen verfügen.
Software-Entwickler, Software-Entwicklungsleiter, Systemarchitekten, Software-Architekten. Dieses Training wendet sich an zwei Zielgruppen: Neueinsteiger ohne wesentliche Vorkenntnissen in C++, jedochmit Programmier-Erfahrung z.B. in Java, C#, Python, ... sowie an Wiedereinsteiger, welche C++ aus dem Studium oder einem länger zurückliegenden Projekt kennen und dieses Wissen für eine aktuell anstehende Aufgabe reaktivieren möchten.
Programmierkenntnisse in C oder einer ähnlichen (prozeduralen) Sprache sowie Kenntnis grundlegender Konzepte der objektorientierten Programmierung (Kapselung in Klassen, Wiederverwendung durch Komposition und Vererbung).
Klassen und Objekte
- Kapselung von (Member-) Daten und Funktionen
- Zugriffsschutz
- Konstruktor und Destruktor
- Virtuelle Member-Funktionen
- Klassen-Daten und -Funktionen
Zusammenspiel von Klassen
- Überblick zur UML-Notation
- Assoziation, Komposition, Vererbung
- Liskovsches Ersetzungsprinzip (LSP)
- Interfaces (dynamischer Polymorphismus)
Einführung zu Templates
- Parametrisierung von Typen
- Weitere Möglichkeiten
Speicher-Modell
- Statische und automatische Bereitstellung
- Dynamische Anforderung/Freigabe (new und delete)
- RValue-Referenzen und "Copy vs. Move"
Einführender Überblick zu C++-Spezifika
- Operator-Überladung
- Typumwandlungen
- Exceptions
- Präprozessor
Standard-Bibliothek
- Verwendung von Zeichenketten
- Konzept der I/O-Streams
- Überblick zu weiteren Komponenten/Ergänzungen
Ausblick / Überblick
- Parallelisierung / Multi-Threading
- C-Kompatibilität (Prinzipien, Vor- und Nachteile)
- C++ für Embedded-Programmierung
- "Laufzeit-" vs. "Compilezeit-" Programmierung
Mikro-Projekte
- Demo-Code und/oder Aufgaben zur eigenen Bearbeitung nach Wahl inkl. anschließender Erläuterung möglicher Variationen
Präsenz-Training
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.