C++ Design Patterns und Idiome

Kursziele

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.

Zielgruppe

Software-Entwickler

Empfohlene Dauer

2 Tage, insgesamt 12 Zeitstunden

Inhalte

  • 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

Voraussetzungen

Der Kurs ›Objektorientiertes Programmieren mit C++‹ oder vergleichbare Kenntnisse. Längere Praxiserfahrung in C++ ist vorteilhaft.

Schlagwörter

[Addthis] [Google Bookmarks] [Yahoo! Bookmarks] [Delicius] [Mister Wong]

[Nach oben]