Java Reference
In-Depth Information
zeugungsmuster wie die Abstrakte Fabrik verwenden zum dynamischen Austausch
der zu erzeugenden Objekte das liskovsche Substitutionsprinzip. Hingegen kommt
das Singleton-Muster komplett ohne Vererbung aus.
Erzeugungsmuster machen ein System unabhängig davon,
wie seine Objekte erzeugt werden.
Neben den oben erwähnten Kategorien lassen sich noch weitere Kategorien finden.
Als Beispiele werden genannt:
x Muster für Nebenläufigkeit (engl. Concurrency Patterns )
Sie beschäftigen sich mit den spezifischen Entwurfsproblemen von nebenläufigen
Programmen wie z. B. das Producer-Consumer-Pattern [Gr102] oder Rendezvous-
Pattern (siehe [Dou02, 227ff.]).
x Muster für die Persistenz (engl. Persistency Patterns )
Sie befassen sich mit dem persistenten Speichern von Objekten in Datenbanken
wie z. B. das Identity Map-Pattern (siehe [Fow03]).
Mit der Anzahl der Entwurfsmuster steigt auch die Anzahl der Kategorien: wenn neue
Muster veröffentlicht werden, gehören sie häufig zu neuen Spezialgebieten beim Ent-
wurf, die bisher noch nicht durch Muster abgedeckt waren. Eine kurze Übersicht über
die in diesem Buch ausgewählten Muster gibt nun das folgende Kapitel.
4.2 Übersicht über die vorgestellten Entwurfsmuster
In diesem Kapitel werden die in diesem Buch insgesamt vorgestellten Entwurfsmuster
kurz beschrieben. Damit soll sich der Leser einen Überblick verschaffen können, um
bei Bedarf gezielt nach einem Muster suchen zu können.
4.2.1 Strukturmuster
Die folgenden Strukturmuster wurden in dieses Buch aufgenommen:
x Das Adapter-Muster passt eine vorhandene "falsche" Schnittstelle an die ge-
wünschte Form an. Der klassenbasierte Adapter leitet die zu adaptierende Klasse
ab, um an die Schnittstelle der zu adaptierenden Klasse zu gelangen. Dadurch erbt
der Adapter aber auch zusätzlichen "Ballast". Der objektbasierte Adapter aggregiert
die zu adaptierende Klasse. Er ist wie im Falle des klassenbasierten Adapters spe-
ziell für die zu adaptierende Klasse geschrieben, erbt aber keinen "Ballast".
x Das Brücke-Muster trennt eine Implementierung und ihre Schnittstelle zum Client
(Abstraktion) weitestgehend voneinander. Die Klassenhierarchie einer Abstraktion
und einer Implementierung sind durch die sogenannte "Brücke" verbunden. Da-
durch wird erreicht, dass beide Teile getrennt verändert und erweitert werden
können.
x Das Dekorierer-Muster ermöglicht es, zur Laufzeit eine zusätzliche Funktionalität
zu einem Objekt bzw. seinen Kindern in dynamischer Weise hinzuzufügen.
Search WWH ::




Custom Search