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

Slides:



Advertisements
Ähnliche Präsentationen
Vorbereitung zu Praktikum 3
Advertisements

Programmieren im Großen von Markus Schmidt und Benno Kröger.
Strategie (Strategy / Policy) Ein objektbasiertes Verhaltensmuster Stephan Munkelt, Stefan Salzmann - 03IN.
Harald Köbler Software Design Patterns Prototype.
Anwendungen aus Modellen Michael Löwe Forschungskolloquium der FHDW,Hannover Hannover, 21. Februar 2005.
6.3 Ereignisbasierte Systeme Ereignis (event) : eine Ereignis-Quelle (event source, publisher) generiert Benachrichtigung (event notification), an der.
Einführung in Cocoa Re-usable Content in 3D und Simulationssystemen Prof. Dr. Manfred Thaller, SS 2012 Do, Uhr, Archäologie-Pool Referent: Nelson.
Design Patterns- Entwurfsmuster
Objektorientierter Entwurf (OOD) Übersicht
Objektorientierter Entwurf (OOD) Teil 3: Qualitätsmodell
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
es gibt (fast) nichts, was nicht anders gemacht werden könnte
Java: Objektorientierte Programmierung
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 4 Vererbung Sommersemester 2003 Lars Bernard.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 5 Polymorphismus Sommersemester 2003 Lars Bernard.
Sebastian Grahn Sebastian Kühn
Das Strukturmuster Kompositum von C. Günther, T. Hammerschmidt und D. Kuhn.
Grundlegende Analysen & Zwischendarstellungen
Programmierpraktikum eXtreme Programming 2005
Prüfkriterien für objektorientierte Systeme
1 WS 2012 Software-Engineering II Aspektorientierung.
-LABORPRAKTIKUM- SOMMERSEMESTER 2005
Folie 1 Christian Pfeffer Carsten Walther Fernstudium Informatik Matrikel LABORPRAKTIKUM- SOMMERSEMESTER 2005 Umsetzung von Pattern Muster: DECORATOR.
Command Pattern Karola Schäuble,
Dependents, Publish-Subscribe, Listener
Entwurfsmuster EDV Entwurfsmuster.
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
1 Klassen (1) Eine Klasse beschreibt eine Menge von Objekten mit gemeinsamer Struktur gemeinsamem Verhalten gemeinsamen Beziehungen gemeinsamer Semantik.
XML – Grundlagen und Anwendungen Teil 6: Verarbeitung von XML-Dokumenten: XSLT Prof. Dr. Michael Löwe, FHDW Hannover.
OO Analyse und Entwurf für Anwender
OO Analyse und Entwurf für Anwender
OO Analyse und Entwurf für Anwender XIII. Objektorientierte Benutzeroberfäche Dr. Michael Löwe.
OO Analyse und Entwurf für Anwender
OO Analyse und Entwurf für Anwender
Übung zum Thema Architektur
OO Analyse und Entwurf für Anwender
OO Analyse und Entwurf für Anwender
Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro.
Die Skriptsprache Python im Kontext des Softwareentwicklungsprozesses
FH-Hof Adapter & Facade Pattern Richard Göbel. FH-Hof Motivation Gegeben ist eine Klasse mit vorhandenen Methoden Gefordert ist eine Klasse, die ein bestimmtes.
Refactoring To Patterns Generalization Patterns. Einführung Ziel spezifisches Code -> allgemeingültigeres Code Motivation Beseitigung von mehrfach vorhandenes.
Objektorientierte Modellierung
12. Vorlesung: Aktivitätsdiagramme
Unified Modeling Language Repetition / Einführung zu UML
Ausgangslage Mangelhafte Führungs-kompetenz Schlechtes Betriebsklima
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. M. Thaller AM1: Re-usable Content in 3D und Simulationssystemen.
Architekturen und Techniken für computergestützte Engineering Workbenches.
Konzepte der objektorientierten Programmierung
Seminar Softwareentwicklung Programmierstil Helmut Schmidauer
Wasserfallmodell und Einzelbegriffe
Management- und Web Services- Architekturen
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Vom Geschäftsprozess zum Quellcode
Das Command Muster Deimbacher, Gölles.
Boga Abschlusspräsentation
Objektorientierte Modellierung mit UML
© ARC Solutions GmbH All rights reserved 10. Informatik-Tag, HTWM Dipl.-Inf. Chris Hübsch, ARC Solutions GmbH EINSATZ VON DESIGN PATTERNS BEI DER.
Software Design Patterns
Entwurfsmuster (Design Pattern)
XML – Grundlagen und Anwendungen Teil 4: Modellierung von Datenmodellen mit XML-Schema Prof. Dr. Michael Löwe, FHDW Hannover.
EJB Architektur für große Web - Applikationen Gerald Weber
Case Tools Unterstützung für Design Pattern von Vladislav Krasnyanskiy.
Design Pattern1 Motivation Entwurfsmuster Entwurf wiederverwendbarer objektorientierter Software schwer gute Entwürfe entstehen durch Wiederverwen- dung.
Dieser Vortrag wird gesponsort von:
Objektorientierte (OO) Programmierung
Neukonzeptionierung des SVNCheckers > Malte Legenhausen > DLR > Folie 1 Observer - Pattern Malte Legenhausen, Robert Werschnitzke Asea Brown.
Objektorientierte Programmierung Was ist das eigentlich ?
OO Analyse und Entwurf für Anwender
OO Analyse und Entwurf für Anwender
 Präsentation transkript:

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

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)

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]

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

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

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

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()

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

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()

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

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“

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

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

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

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

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

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()

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