Inhalt „C++ Aufbaukurs“
In diesem C++ Kurs werden die weiterführenden Sprachelemente von C++ für fortgeschrittene Programmierer vorgestellt. Dazu gehören vor allem Templates, die die Grundlage für die C++-Standardbibliothek (STL) sind.
Diese C++ Schulung unterscheidet sich von vielen anderen C++ Kursen dadurch, dass die neuen Sprachelemente von C++11, C++14 und C++17 von Anfang an eingesetzt werden. Er richtet sich an Software-Entwickler in Firmen, die mit C++ professionell programmieren wollen. Der Kurs kann mit dem Compiler Ihrer Wahl (Microsoft C++ mit Visual Studio 2019/2022, gcc usw.) durchgeführt werden.
Dieser C++ Aufbaukurs vermittelt zusammen mit dem C++-Grundkurs einen umfassenden Überblick über das moderne C++.
Für die Übungen kann das freie Visual Studio Communitiy oder der freie gnu gcc Compiler verwendet werden.
Die Inhalte können an die Wünsche der Teilnehmer angepasst werden.
1. Namensbereiche
- Die Definition und Verwendung von Namensbereichen
2. Exception-Handling
- try, catch, throw
- Exceptions in der Standardbibliothek
- Die Freigabe von Ressourcen bei Exceptions (RAII)
- noexcept
3. Container der Standardbibliothek
- Sequenzielle Container, Iteratoren
- Geordnete und nichtgeordnete assoziative Container
- Klassen vector, list und deque
4. Funktoren und Lambda-Ausdrücke
- Der Aufrufoperator
- Prädikate und Vergleichsfunktionen
- Lambda-Ausdrücke
5. Templates
- Funktions-Templates und Spezialisierungen
- Nicht-Typ-Parameter
- Rekursive Funktions-Templates und Variadische Templates
- Klassen-Templates
- Type Traits
- Typ-Inferenz
6. STL-Algorithmen und Lambda-Ausdrücke
- Iteratoren: Umkehriteratoren, Einfügefunktionen und Einfügeiteratoren, Stream-Iteratoren
- Lineares Suchen und Zählen
- Suche nach Teilfolgen
- Minimum und Maximum
- Elemente vertauschen
- Kopieren von Bereichen
- Elemente transformieren, ersetzen und entfernen
- Partitionen und Sortieren
- Binäres Suchen in sortierten Bereichen
- Mischen von sortierten Bereichen
- Mengenoperationen auf sortierten Bereichen
7. Zeit- und Kalenderdaten mit chrono
- Zeitpunkt und Zeitdauern
- Uhren
8. Multithreading
- Funktionen mit async und thread starten
- Multithreading mit Lambda-Ausdrücken
- Exceptions in Threads
- future und promise
- Kritische Abschnitte mit lock_guard usw. sperren
- Bedingungsvariablen
9. Smart Pointer
- unique_ptr, shared_ptr, weak_ptr
Über den „C++ Aufbaukurs“
Zielgruppe dieser C++ Schulung
Software-Entwickler, die professionelle Programme mit C++ schreiben wollen. Die Teilnehmer sollten C++-Kenntnisse im Umfang des C++-Grundkurses haben.
Unterrichtsstil
Vortrag mit vielen Beispielen, die das Wesentliche auf den Punkt bringen. Dabei wird auf einen ausgewogenes Verhältnis von Theorie und Praxis geachtet.
- Zu Beginn eines neuen Themas wird zunächst ein Überblick über die Einsatzmöglichkeiten, Grundideen und die Syntax gegeben. Diese werden an sorgfältig ausgewählten und bewährten Beispielen illustriert.
- Das Verständnis wird oft durch den Vergleich ähnlicher (auch älterer) Sprachelemente und ihrer Vor- und Nachteile vertieft. Dabei werden oft „best practises“ empfohlen.
- Falls die Teilnehmer ihr Wissen selbständig vertiefen wollen: Das Manuskript enthält zahlreiche praxisnahe Übungsaufgaben. Auf Wunsch können nach vorheriger Absprache auch Aufgaben aus der Arbeit der Seminarteilnehmer behandelt werden.
Falls sich im Lauf des Seminars zeigt, dass Grundlagen bei den Teilnehmern fehlen oder weitere Themen gewünscht werden, kann die Agenda auch noch während des Seminars an die Wünsche der Teilnehmer angepasst werden.
Schulungsunterlagen
Ausführliche und detaillierte Schulungsunterlagen (ca. 200 Seiten) – Vollständiger Text, keine Powerpoint Folien, die nur Stichworte enthalten. Deshalb können die Kursunterlagen auch als Referenz bei der Arbeit verwendet werden.
Ort und Zeit dieser C++ Schulung
Dieses Seminar wird als Firmenseminar (inhouse) angeboten. Die Durchführung als Präsenzseminar wird bevorzugt, ist aber auch als Online-Seminar möglich. Termine nach Vereinbarung.
Dauer: 5 Tage
Öffentliche Seminare von Prof. Richard Kaiser finden Sie bei der Technischen Akademie Esslingen.
Beurteilungen durch Teilnehmer:
??? | 1 (sehr gut) | 2 | 3 | 4 | 5 |
Gesamtbewertung | |||||
Lern- und Arbeitsatmosphäre | |||||
Kursunterlagen | |||||
Fachkompetenz des Dozenten |
Dozent dieser C++ Schulung
Prof. Richard Kaiser führt seit vielen Jahren Seminare für Firmen durch, vor allem über Software-Entwicklung und die Programmiersprachen C#, C++ und C. Er kennt die Anforderungen der Praxis und geht sowohl in den grundlegenden Konzepten als auch in den Einzelheiten detailliert darauf ein. Zu seinen Kunden gehören renommierte Weltkonzerne und kleine und mittelständische Unternehmen. Er ist der Verfasser mehrerer Bücher über C++, zuletzt „C++ mit Visual Studio 2019“. Er war viele Jahre Mitglied im DIN Normierungsausschuss Informationstechnik NI-22.