C++ Design Patterns und Idiome
Entwurfsmuster (Design Patterns) sind bewährte, kontextunabhängige Lösungen für wiederkehrende Entwurfsprobleme und vereinfachen den Entwicklungsprozess. Das Seminar behandelt für C++ spezifische Muster und Idiome sowie die zentralen Entwurfsmuster der ›Gang of Four‹ (GoF). Übungen mit Fallbeispielen vertiefen das Verständnis für die zugrunde liegenden objektorientierten Konzepte. Verweise zum Mustergebrauch der C++ Standard Template Library (STL) ermöglichen weitere praktische Einsatzgebiete. Die Teilnehmer trainieren vor allem, nicht nur in einzelnen Klassen, sondern in ganzen Lösungsstrukturen zu denken und zu modellieren.
Inhalte des Seminars
Einführung
- Was sind Muster in der Software-Entwicklung?
- Idiom, Entwurfsmuster, Analysemuster, Architekturmuster
- Muster und Frameworks
- Anti-Muster: Wie es nicht sein sollte
- Kategorien von Mustern, klassen- und objektbasierte Muster
- Refactoring und Refactoring mit Patterns durchführen
- UML-Notation von Mustern
- Gof-Muster und weitere Mustersammlungen
- Nachteile von Mustern?
Erzeugungsmuster (Creational Pattern)
- Fabrikmethode (Factory Method): Erzeugt Objekte
- Abstrakte Fabrik (Abstract Factory): Erzeugt Familien von Objekten
- Erbauer (Builder): Konstruktion aus Teilen zusammensetzen
- Prototyp (Prototype): Erzeugt Objekt aus einer Vorlage
- Singleton: Erzeugt genau ein Objekt
Strukturmuster (Structural Pattern)
- Adapter: Bringt unterschiedliche Schnittstellen zusammen
- Brücke (Bridge): Trennt Implementierung von Abstraktion
- Dekorierer (Decorator): Erweitert Klasse um Funktionalität
- Fassade (Facade): Bietet einheitliche Schnittstelle
- Fliegengewicht (Flyweight): Verwaltet effektiv große Mengen kleiner Objekte
- Kompositum (Composite): Bildet Teil/Ganzes-Beziehung
- Proxy: Definiert Stellvertreter
Verhaltensmuster (Behavioral Pattern)
- Interpreter: Verarbeitet eine eigene Sprachgrammatik
- Schablonenmethode (Template Method): Unterklassen bestimmen Verhalten
- Befehl (Command): Trennt Befehl und Ausführung
- Beobachter (Observer): Realisiert Benachrichtigungen
- Besucher (Visitor): Kapselt Operation für Elemente
- Iterator: Läuft Elemente einer Sammlung ab
- Memento: Bildet Zustand für Sicherung ab
- Strategie (Strategy): Erlaubt Austausch von Algorithmen
- Vermittler (Mediator): Koppelt Objekte
- Zustand (State): Erlaubt Austausch von Verhalten
- Zuständigkeitskette (Chain of Responsibility): Fragt Objekte nach Verarbeitungswunsch
Termine / Kontakt
Jedes Seminar führt tutego als kundenangepasstes Inhouse-Seminar durch.
Alle unsere Seminare können zudem als Live-Online-Seminar besucht werden.
Wir helfen Ihnen gerne bei der Anmeldung und einen passenden Termin zu finden. Kontaktieren Sie uns per E-Mail oder unter 0800/tutegos (kostenlos aus allen Netzen).
Die Fakten
- Empfohlene Schulungsdauer: 2 Tage, insgesamt 16 Unterrichtsstunden à 45 Minuten
- Zielgruppe: Software-Entwickler, die große und komplexe C++-Programme mit Pattern besser strukturieren möchten.
- Vorkenntnisse: Der Kurs ›Objektorientiertes Programmieren mit C++‹ oder vergleichbare Kenntnisse. Längere Praxiserfahrung in C++ ist vorteilhaft.
- Schulungsunterlagen: Deutschsprachige Unterlagen (Kopien der Folien), Zertifikat
Weiterführende Seminare
Effektive Softwareentwicklung bedeutet, dass Entwickler auf Standardbilbliotheken zurückgreifen. In C++ sind das STL und Boost. Unser Seminar Standard Template Library (STL) und Standard C++ Library gibt einen tiefen Einblick in die Bibliotheken. C++11: Neuerungen im C++-Standard liefert alle Updates zur neuesten C++-Version.