18
Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Embed Size (px)

Citation preview

Page 1: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Design Patterns-Entwurfsmuster

Nina Matzick

WS 2008/09

Semantic Web

Page 2: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Inhalt:

Was sind Entwurfsmuster?

Was sind die meist verwendeten Entwurfmustertypen?

Page 3: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Was sind Entwurfsmuster?

Definition: Ein Muster ist eine Lösung zu einem kontextbezogenen Problem.

1.Kontext / 2. Problem / 3. Lösung Die Basis für fast alle Design Patterns: “Take the parts that vary and encapsulate them, so that later you can alter or extend

the parts that vary without affecting those that don’t.“

Page 4: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Die meist verwendeten Entwurfmustertypen

Page 5: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Observer Pattern (Beobachter)

Kategorie: Verhaltensmuster Definiert eine Abhängigkeit zwischen einem Objekt und mehreren

Objekten Wird ein Objekt geändert, werden alle abhängigen Objekte

„benachrichtigt“ und automatisch aktualisiert

Page 6: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Factory Method Pattern (Fabrikmethode)

Kategorie: Erzeugungsmuster Es wird ein Interface definiert, um ein Objekt zu kreieren Es lässt die Unterklassen entscheiden, welche Klasse

realisiert werden soll

Page 7: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Singleton Pattern (Einzelstück)

Kategorie: Erzeugungsmuster Gewährleistet, dass eine Klasse nur eine Instanz

hat Stellt globalen Punkt bereit

Page 8: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Decorator Pattern (Dekodierer) Kategorie: Strukturmuster Ergänzende Aufgaben werden dynamisch an ein Objekt gehängt Flexible Alternative zur Unterklassenbildung

Page 9: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Command Pattern (Kommando) Kapselung von Anfragen als Objekt Anfragen können dabei in Warteschlangen gestellt,

aufgezeichnet und später ggf. auch wieder rückgängig gemacht werden

Page 10: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Adapter Pattern (Adapter)• Kategorie der Strukturmuster

• Das Muster dient zur Übersetzung einer Schnittstelle in eine andere.

Page 11: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Facade Pattern (Fassade) Kategorie: Strukturmuster Es bietet eine einheitliche und meist vereinfachte

Schnittstelle zu einer Menge von Schnittstellen eines Subsystems

Page 12: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Template Method Pattern (Schablonenmethode)

Kategorie: Entwurfsmuster definiert eine Art Schablone für

einen Algorithmus

Page 13: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Iterator (Iterator)

Page 14: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Composite Patterns (Komposition)

Kategorie: Strukturmuster Dieses Muster erlaubt es Objekte in einer Baumstruktur zu entwerfen,

um eine “Teil- eines- Ganzen- Hierarchie“ zu repräsentieren

Page 15: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The State Pattern (Zustand) Kategorie: Verhaltensmuster Erlaubt einem Objekt sein Verhalten zu verändern, wenn sein

innerer Zustand sich verändert

Page 16: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

The Proxy Pattern (Stellvertreter)

Kategorie: Strukturmuster Stellt einen Platzhalter oder einen Ersatz bereit Dient zum Verschieben der Kontrolle über ein Objekt auf ein

Stellvertreterobjekt

Page 17: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Compound Pattern

Entwurfsmuster werden oft zusammen und kombiniert innerhalb einer Entwurfslösung benutzt

Ein Compound Pattern kombiniert zwei oder mehr Muster in einer Lösung, die sich mit einem einmaligen oder generellen Problem beschäftigt

Page 18: Design Patterns- Entwurfsmuster Nina Matzick WS 2008/09 Semantic Web

Dankeschön