Software Design mit Modernem C++

Seminarinformationen

Seminar - Ziel

In dieser 3-tägigen Schulung "Software Design mit Modernem C++" erlernen Sie die Prinzipien eines hochwertigen Software-Designs mit der C++-Programmiersprache. Der Kurs legt den Fokus auf bewährte Entwicklungskonzepte und -prinzipien, die speziell für C++ relevant sind.

Sie erfahren, wie Sie professionellen und effizienten Code schreiben, indem Sie sich auf die wesentlichen Aspekte der Sprache konzentrieren. Ihr Verständnis der C++-Kernkonzepte wird vertieft, sodass Sie robuste, wartbare und leistungsfähige Software mit minimalen Abhängigkeiten entwickeln können.

Zudem lernen Sie, typische Fallstricke zu vermeiden und Ihre Entwicklungspraktiken gezielt zu optimieren

Teilnehmer - Zielgruppe

  • C++ Entwickler

Kurs - Voraussetzungen

Für eine optimale Teilnahme am Kurs empfehlen wir folgende Vorkenntnisse:

  • ca. 1-2 Jahre Erfahrung mit C++
  • gute Kenntnisse der Syntax von C++
  • Kenntnisse der grundlegendsten Features (z.B. std::vector, std::unique_ptr, ...)
  • Einige Erfahrung mit Vererbungshierarchien
  • Etwas Erfarhung mit C++ Templates

Seminardauer

  • 3 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

Grundlegende Design-Prinzipien

  • Das Ziel von gutem Software-Design
  • Die SOLID Prinzipien

Konzepte und die STL

  • Das Design der STL: Value Semantics
  • Konzepte in C++
  • Überblick über die STL
  • STL-Algorithmen
  • STL-Container

Klassen-Design: Der Weg zu Value Semantics

  • Die “Compiler Generated Functions”
  • Die Lebenszeit von Objekten (RAII)
  • Move Semantics
  • Member Data
  • Member Functions
  • Allgemeines Klassen-Design
  • Const Correctness
  • Sichtbar oder Zugreifbar?

Dynamischer Polymorphismus im modernen C++

  • Klasse Vererbung: Immer noch das richtige Mittel?
  • Das Strategy Design Pattern
    • Die klassische GoF Form
    • Die Implementierung im modernen C++
  • Das Visitor Design Pattern
    • Die klassische GoF Form
    • Die Implementierung im modernen C++
  • Wie Value Semantics die klassischen Design Patterns verändert

Weitere Schulungen zu Thema C++ Programmierung

Plattformübergreifende Entwicklung mit Qt - Einführung

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 3-tägigen Schulung "Plattformübergreifende Entwicklung mit Qt - Einführung" erlernen Sie die grundlegenden Konzepte und Techniken zur Entwicklung plattformübergreifender Anwendungen mit Qt. Sie machen sich mit der Qt-Entwicklungsumgebung und dem ...

C++ Programmierung Grundlagen

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 5-tägigen Schulung "C++ Programmierung Grundlagen" erwerben Sie die Fähigkeiten, Programme mit der erweiterten Sprache C zu entwickeln. Sie lernen, eigene Problemstellungen selbstständig in funktionierende Programme zu überführen. Die Unterschiede zu C ...

Plattformübergreifende Entwicklung mit Qt - Einführung

- u.a. in Hamburg, Köln, Zürich, Mannheim, Erfurt

In dieser 3-tägigen Schulung "Plattformübergreifende Entwicklung mit Qt - Einführung" lernen Sie die grundlegenden Konzepte und Techniken zur Entwicklung plattformübergreifender Anwendungen mit Qt. Sie werden mit der Qt-Entwicklungsumgebung und dem QtCreator vertraut ...

Plattformübergreifende Entwicklung mit Qt - Vertiefung

- u.a. in Hamburg, Dresden, Düsseldorf, Erfurt, Virtual Classroom

In dieser 3-tägigen Schulung "Plattformübergreifende Entwicklung mit Qt - Vertiefung" erweitern Sie Ihre Kenntnisse und Fähigkeiten in der Entwicklung komplexer GUI-Anwendungen mit Qt. Sie werden Techniken wie Drag & Drop, Item-basierte Widgets, Model-View-Widgets und ...