Java Reference
In-Depth Information
:Verkauf
:Verkauf
:Verkauf
:Entwicklung
:Controlling
maier:
Mitarbeiter
schulze:
Mitarbeiter
schulze:
Mitarbeiter
Bild 4-48 Mitarbeiter haben die gleiche Rolle
Bild 4-49 Ein Mitarbeiter hat mehrere Rollen
Das folgende Bild zeigt einen Mitarbeiter, der die Rolle wechselt:
:Verkauf
:Entwicklung
{ Zeitpunkt t1 }
{ Zeitpunkt t2 }
mueller:
Mitarbeiter
Bild 4-50 Ein Mitarbeiter hat zu verschiedenen Zeitpunkten t1 und t2 jeweils eine andere Rolle
Aus der bisherigen Lösungsbeschreibung wird klar, dass das Rollenmuster ein objekt-
basiertes Muster ist.
Eine Anwendung interessiert sich in der Regel sowohl für die Datenfelder und Metho-
den des Kernobjekts selber als auch für die der Rolle(n), welche dieses gerade spielt.
Beispielsweise möchte eine Anwendung sowohl den Namen eines Verkäufers wissen
(Datenfeld des Kernobjekts) als auch dessen Umsatz im letzten Monat (Datenfeld des
Rollenobjekts). Eigentlich sind dies Eigenschaften ein und desselben Objekts, die aber
durch das Rollenmuster separiert wurden, damit das dynamische Wechseln von Rollen
möglich wird. Um einer Anwendung den Zugriff sowohl auf die Datenfelder und Metho-
den des Rollenobjekts als auch auf die des Kernobjekts zu ermöglichen, bietet sich für
den Entwurf der Rollenklassen folgende Lösung an:
x Eine Rollenklasse stellt eine Methode wie etwa getKernObjekt() zur Verfügung,
die das gerade aggregierte Kernobjekt zurückgibt. Damit kann eine Anwendung
dann auch Methoden des Kernobjekts aufrufen.
Search WWH ::




Custom Search