Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Dieser Vortrag wird gesponsort von:

Ähnliche Präsentationen


Präsentation zum Thema: "Dieser Vortrag wird gesponsort von:"—  Präsentation transkript:

1 Dieser Vortrag wird gesponsort von:

2 Patterns (Entwurfsmuster)
Was sind Patterns? Designvorlagen für bekannte Programmierprobleme In möglichst allgemeiner Form gehalten Wie sind Patterns aufgebaut? Eindeutiger Name Zu spezifierendes Problem Ein Kontext, in dem sich das Problem stellt Lösung (Klassendarstellung)

3 Warum gibt es Patterns? Helfen bestehende Software zu verstehen und analysieren Bei ähnlichen Problemstellungen können gute Konzepte wiederverwendet werden Verbessern des eigenen Codes durch bereits bestehende & bewährte Bausteine erfahrener Entwickler Setzen von Standards im Softwareaufbau Erhöhung der Programmierqualität

4 Patterns in unserem Projekt?
Praxisbezogene und reelle Programmiersituation Hoher Lerneffekt „Effizienter“ Code Contra: Viel höherer Einarbeitungsaufwand Sehr genaue formale Randbedingungen, die jeder erfüllen muss Aufwand / Nutzen auf das Projekt bezogen

5 Beispiele: Bekannte Patterns: Beobachter Muster Singleton Muster
Command Muster Fliegengewicht Muster Proxy Muster

6 Das Beobachter Muster:
Name: Observer Pattern Problem: wir haben ein konkretes Subjekt (z.B. Datenbank, Server, etc), dessen Datenänderung Auswirkungen auf außenstehende Objekte hat (z.B. Clients, etc.). Dabei müssen alle außenstehenden Objekte Kenntnis von einer Datenänderung erhalten.

7 Das Beobachter Muster:
Kontext: Als Beispiel eine Online Bibliothek, an der mehrere Nutzer gleichzeitig arbeiten und sich Bücher ausleihen können. Hierbei müssen alle Clients immer aktuellste Daten besitzen. Lösung: Einteilung in Beobachtende und Beobachtete Komponenten Einführung spezieller Kommunikationsprozeduren Trennung von Daten und Interaktionen

8 Anschaulich:

9 Das Befehlsmuster: Name: Command Pattern
Problem: wir haben eine Anwendung die gegebene Kommandos verwalten, archivieren und ggf. rückgängig machen soll. Dazu müssen alle Anweisung im Programm festgehalten werden und ansprechbar sein.

10 Das Befehlsmuster: Kontext: ein gutes Beispiel wäre z.B. ein Schachprogramm, wo alle Züge notiert, gespeichert und auch zurückgenommen werden können, danach kann man im Replay schrittweise die Partien nachvollziehen Lösung: Kapselung aller Befehle in Objekten, welche dann anstelle direkter Methodenaufrufe in eine Befehlsqueue geschickt werden. Ausführen von Befehlen mittels „lese nächsten Befehl aus Queue“ , danach speichern der kapselnden Objekte.

11 Zuletzt ... Fragen ?

12 Dieser Vortrag wurde präsentiert von:


Herunterladen ppt "Dieser Vortrag wird gesponsort von:"

Ähnliche Präsentationen


Google-Anzeigen