Java Reference
In-Depth Information
3.2 Eigenschaften von Mustern und ihre Konstruktion
Muster haben das Ziel, die Eigenschaften von Architekturen zu verbessern. Hierzu ge-
hören beispielsweise die folgenden Eigenschaften:
x Verständlichkeit und
x Erweiterbarkeit.
Verständlichkeit wird erreicht durch Einfachheit und indem jedes Muster einfach und in
strukturierter Weise umfassend dokumentiert wird. Erweiterungen können beispiels-
weise
x durch statische Vererbung oder
x über die Verwendung einer aggregierten Schnittstelle 39 bzw. einer abstrakten Klas-
se als Abstraktion
erfolgen.
Objektorientierte Muster genügen den folgenden Konstruktions-
prinzipien:
x loosely coupled system (siehe Kapitel 1.5) - lose Kopplung
von Komponenten,
x Abstraktion (siehe Kapitel 1.2) - durch Generalisierung und
durch Ausweisen von Schnittstellen oder abstrakten Klassen,
x Information Hiding (siehe Kapitel 1.2) durch Verbergen der
Implementierung,
x klare Verantwortlichkeiten (siehe Kapitel 1.3) durch eine
Ausweisung von Rollen und
x dem Dependency Inversion-Prinzip , wobei eine Klasse einer
höheren Ebene nicht von einer Klasse einer tieferen Ebene ab-
hängt.
Es soll an dieser Stelle betont werden, dass es möglich ist, Muster für nicht objektori-
entierte Systeme zu formulieren. Diese Muster kommen also insbesondere ohne Ver-
erbung und Polymorphie aus [Bus98, S. 24]. Muster müssen nicht grundsätzlich ob-
jektorientiert sein. Die in diesem Buch vorgestellten Entwurfsmuster werden alle in ei-
ner objektorientierten Fassung vorgestellt.
Wer objektorientiert denkt, versucht stets durch Generalisierung die höchstmögliche
Abstraktion - in anderen Worten die Basisklasse - zu finden, um daraus durch Spe-
zialisierung die verschiedenen Varianten zu gewinnen.
39 Siehe beispielsweise das Brücke-Muster.
Search WWH ::




Custom Search