Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

OO Analyse und Entwurf für Anwender XII. Entwurfsmuster Dr. Michael Löwe.

Ähnliche Präsentationen


Präsentation zum Thema: "OO Analyse und Entwurf für Anwender XII. Entwurfsmuster Dr. Michael Löwe."—  Präsentation transkript:

1 OO Analyse und Entwurf für Anwender XII. Entwurfsmuster Dr. Michael Löwe

2 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 2 Inhalt der Ausbildung Kennzeichen objektorientierter Softwareentwicklung (1) Projektorganisation (2) Architektur (2) Objektorientierte Analyse (4) Objektorientierter Entwurf (3 von 5) Realisierung und Test (2)

3 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 3 Übungsbeispiel: Rückversicherung Org.-Vertrag Ordnung {abstract } PropostionalGeschichtet Prop-Anteil anteil:Prozent Schicht Limit:Betrag ** hat  1 * Anteil {abstract} RV-Kanal {abstract} RV-Vertrag hat  1 *  hat [0,1]

4 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 4 Lernziele Verständnis für die Wichtigkeit des Entwurfs Einsicht in die Dreifaltigkeit –Material, Werkzeug, Prozeß –Attribute, Operationen, Interaktion Gefühl für den Übergang Analyse / Entwurf Kennenlernen der Beschreibungsmittel Einsicht in den nötigen Detaillierungsgrad Erlernen erster Faustregeln für guten Entwurf Regeln für angemessene Benutzeroberflächen

5 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 5 Inhalt Composite pattern Decorator pattern Adapter pattern Command pattern Mediator pattern Observer pattern

6 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 6 Composite Pattern Repräsentation von Teil-Ganzes- Hierarchien Vereinheitlichen von Teilen und Ganzem Verstecken des Aufbaus vor Klienten

7 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 7 Composite Pattern Composite operation() Component {abstract} operation() Client Leaf operation() children For all g in children g.operation()

8 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 8 Decorator Pattern Hinzufügen von Veranwortlichkeiten –dynamisch –transparent –ohne Seiteneffekte Für temporäre oder lokale Zusatzdienste Wo Spezialisierung unübersichtlich wird

9 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 9 Decorator Pattern Decorator {abstract} operation() Component {abstract} operation() Client Concrete Component operation() component 1 Decorator A operation() Decorator B operation()  component.operation() Decorator::operation(); addedBehavior()

10 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 10 Adapter Pattern Benutzung einer Klasse, deren Schnittstelle nicht optimal paßt Anpassung von Schnittstellen an die Bedürfnisse des Klienten Herstellen einer in unterschiedlichen Kontexten wiederverwendbaren Klasse

11 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 11 Adapter Pattern Target {abstract} request() Adaptee specRequest() Adapter Client request()  specRequest() „implements“ „inherits“ Target {abstract} request() Adaptee specRequest() Adapter Client request()  adaptee.specRequest() adaptee „implements“

12 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 12 Command Pattern Nachrichten als Objekte Trennen von Versenden und Ausführung Unterstützung für „undo“ Unterstützung für Log-Files Basis für Objekt-Transaktionen

13 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 13 Command Pattern ClientInvoker Command {abstract} execute() ConcreteCommand execute() Receiver action() receiver  receiver.action ClientInvoker Command {abstract} execute() ConcreteCommand execute() Receiver action() receiver  receiver.action aReceiveraClientaCommandanInvoker new(aReceiver) storeCommand(aCommand) execute action

14 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 14 Mediator Pattern Viele Objekte kommunizieren in komplexer Art Wiederverwendung eines Objekts scheitert an den vielfältigen Beziehungen Objektifizierung und damit Anpaßbarkeit komplexer Kommunikationsbeziehungen

15 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 15 Mediator Pattern MediatorColleague ConcreteMediatorColleague 2Colleague 1 mediator Klassen: Objekte: m:Mediator c1:colleague c2:colleague c3:colleague c6:colleague c5:colleague c4:colleague

16 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 16 Observer Pattern Umkehr von Beziehungen Umkehrung der Bekanntschaftsverhältnisse Benachrichtigung ohne Wissen darüber, wer benachrichtigt werden muß Erhöhung der Wiederverwendbarkeit

17 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 17 Observer Pattern ConcreteObserver update() Subject attach(Observer) detach(Observer) notify observers * ConcreteSubject setState() getState() Observer {abstract} update() subject for all o:observers o.update observerState= subject.getState()  setState();  notify()

18 Objektorientierte Analyse und Entwurf EntwurfsmusterProf. Dr. Michael Löwe, FHDW, Hannover 18 Zusammenfassung Muster sind Faustregeln für guten Entwurf Sie sind Entwurfsfragmente Sie erhöhen die Wiederverwendung Sie standardisieren den Entwurf Sie sind bekannte Lösungen für Entwurfsprobleme


Herunterladen ppt "OO Analyse und Entwurf für Anwender XII. Entwurfsmuster Dr. Michael Löwe."

Ähnliche Präsentationen


Google-Anzeigen