$KK(Zusammenfassung der Vorteile für die Patterns)
$R(Objective)
Match design patterns with statements describing potential benefits that accrue from the
use of the pattern, for any of the following patterns: Intercepting Filter, Model-View-Controller,
Front Controller, Service Locator, Business Delegate, and Transfer Object.
$R\
Interception Filter
# Pre- und Postprocessing
# Zentrale Kontrolle für eine bestimmte Erweiterung
# Erhöht Wiederverwendbarkeit durch lose Kopplung der Filter
# Deklerative und Flexible Konfiguration
Nachteil:
*Es ist ineffizient, für alle Filter gemeinsame Informationen zu speichern.
Model View Controller
# Einfach neue Clienten zu verwenden
# Trennung Interaktion, Präsentation, und Geschäftsobjekte
# Möglichkeit von mehreren Präsentationen
Nachteil:
* höherer Designaufwand
Front Controller
# Zentrale Kontrolle über Bildschirmablauflogik
# Verbessertes Sicherheitsmamanagement
# Erhöht Wiederverwendung
Service Locator
# Kapselt Komplexität zum Auffinden von Diensten
# Bietet Clienten einfaches und einheitliches Interface zum Zugriff auf Dienste
# Erhöht Performanz des Clienten duch Cachen der Ergebnisses oder bündeln der Suchanfragen.
# Verringert Netzwerkbelastung
# Vereinfacht neue Dienste hinzuzufügen
Business Delegate
# Geringere Kopplung von Präsentationsschicht und Geschäftslogikschicht
# Entkoppelt Clienten von API der Business Objekte
# Zugriff auf Business Objekte ist gekapselt
# Implementiert Fehlererkennung und Threadsynchronisation
# Verringert Netzwerkbelastung, durch Möglichkeit des Cachens.
# Client seitige Fassade
Nachteil: Es wird eine neue Ebene zwischen Client und Serverzugriff hinzugefügt
Transfer Object
# Verringert Netzwerkbelastung
# Reduziert Kommunikation über das Netz
# Verbessert Performance bei Anfragen
Nachteile:
# Möglichkeit veraltete Daten zu bekommen
# Höherer Aufwand zur Synchronisation und Versionskontrolle
# Durch Nebenläufigkeit können die Transferdaten in einen inkonsistenten Zustand kommen.