next up previous
Nächste Seite: Die Bibliothek unterstützende Werkzeuge Aufwärts: Segmentierung Vorherige Seite: Ausgabe

Fassade

Für diese Bildanalyse-Komponente wurde eine Fassade geschaffen, die die Interna, die einzelnen Schichten und Datenstrukturen, versteckt. Die Fassade wird mit den einzelnen Schichten konfiguriert und stellt eine Methode bereit, die auf Anfrage mit einem Bild eine Objektliste zurückliefert. Die Fassade enthält eine Standard-Pipe und puffert die Datenstrukturen zwischen den Schichten. Die Objektgeschichte wird ebenfalls intern verwaltet. Um nun auch die Konfiguration dieser Fasssade mit realen Implementierungen der Schichteninterfaces vor einem Klienten zu verstecken, existiert eine abstrakte Fabrik, die der Klient zur Erzeugung einer Fassade verwenden kann. Die mitgelieferte abstrakte Fabrik konfiguriert die Fassade mit den hier beschriebenen Standardimplementationen der einzelnen Schichten. Verwendet der Klient diese abstrakte Fabrik, kommt er nur mit zwei Methoden der Bibliothek in Kontakt: Die erste liefert ihm eine Fassade, die ihm eine zweite Methode bereitstellt, die ein Bild analysiert. Durch die Bereitstellung dieses Mechanismus wird dem Anwender ein schneller Einstieg ermöglicht. Außerdem sind die Anwendung und die Bibliothek mit diesem Mechanismus binärcodeunabhängig. Wird nur die Farbrik verwendet, muß die Anwendung nicht neu übersetzt werden, wenn sich die Bibliothek geändert hat.

Abbildung 2.17: Zusammenspiel der Schnittstellen und Implementierungen von abstrakter Fabrik und Fassade. Die Fassade liefert eine einfache Schnittstelle zu der Bildanalyse Komponente und wird von einer Fabrik erzeugt und konfiguriert.
\resizebox {1.15\columnwidth}{!}{\includegraphics{Fassade.eps}}

Werden weitere Schichten bereitgestellt oder existierende neu implementiert, bietet es sich für den Entwickler an, eigene, diese Klassen verwendende Fassaden und Fabriken zur Verfügung zu stellen. Ein Anwender der Bibliothek bräuchte dann nur an einer einzigen Stelle in seinem Programm die alte abstrakte Fabrik gegen die neue auszutauschen, um sofort von den Neuerungen profitieren zu können.


next up previous
Nächste Seite: Die Bibliothek unterstützende Werkzeuge Aufwärts: Segmentierung Vorherige Seite: Ausgabe

2001-12-05