Java Reference
In-Depth Information
Objekt der zu adaptierenden (Basis-) Klasse besitzt. Allerdings kann er dabei keine er-
weiternden Methoden einer Unterklasse nutzen.
4.3.4.1 Vorteile
Die folgenden Vorteile werden gesehen:
x Das Adapter-Muster ermöglicht die Kommunikation zwischen zwei unabhängigen
Softwarekomponenten, nämlich zwischen dem Client und einem Objekt der zu
adaptierenden Klasse.
x Adapter können um beliebig viele Funktionen wie z. B. Filter erweitert werden.
x Adapter sind individuell an die jeweilige Lösung angepasst und können daher opti-
miert werden.
x Klassen können leicht ausgetauscht werden. Gegebenenfalls muss nur ein neuer
Adapter zur Verfügung gestellt werden.
x Ein Objekt-Adapter kann auch auf ein Objekt einer Unterklasse der zu adaptieren-
den Klasse angewandt werden. Erweiternde Methoden der Unterklasse kann er da-
bei allerdings nicht nutzen.
4.3.4.2 Nachteile
Die folgenden Nachteile werden gesehen:
x Durch das Adapter-Muster wird beim Aufruf einer Operation ein zusätzlicher Zwi-
schenschritt eingeführt, im Falle des Objekt-Adapters eine Delegation. Dies kann
bei komplexen Adaptern zu zeitlichen Verzögerungen führen.
x Durch die individuelle Anpassung der Adapter an die jeweilige Lösung weisen die
Adapter eine schlechte Wiederverwendbarkeit auf.
4.3.5 Einsatzgebiete
Das Adapter-Muster ermöglicht die Zusammenarbeit von Klassen mit inkompatiblen
Schnittstellen. Es wird in der Regel dazu verwendet, um unabhängig implementierte
Klassen nachträglich zusammenarbeiten zu lassen. Die Anfragen werden dann nur
noch über die Adapter-Klasse an die Klasse mit der inkompatiblen Schnittstelle dele-
giert.
Das Adapter-Muster ist einzusetzen, wenn:
x bereits bestehende Klassen mit unterschiedlichen Schnittstellen zusammenarbeiten
sollen, ohne die Klassen zu überarbeiten, oder
x eine zu entwickelnde Klasse wiederverwendbar sein soll und zum Zeitpunkt der Ent-
wicklung nicht klar ist, mit welchen weiteren Klassen sie zusammenarbeiten soll.
Das Adapter-Muster ist praktisch in jeder API verborgen. Ein Beispiel für das Entwurfs-
muster Adapter sind Anwendungen, die für eine bestimmte grafische Oberfläche im-
plementiert wurden und nun auf eine neue Plattform portiert werden sollen. Dabei stim-
Search WWH ::




Custom Search