Proxy [ Übersicht ] [ Beispiel ] [ Quellen ] [ Home Entwurfsmuster ]


Beschreibung

Überträgt man nun die Struktur des Pattern auf das Beispiel Cache Proxy, so übernimmt die Testklasse die Funktion des Klienten. Sie erzeugt eine Instanz des GeneratorProxys und fragt darauf Werte ab, deren Sinuswerte bestimmt werden sollen. Der GeneratorProxy wiederum beinhaltet eine Instanz (genobj) vom tatsächlichen SinusGenerators. Wichtig sind hierbei noch die Variablen (speicher) und (zugriff), die das Cachen ganz simpel demonstrieren sollen. In (zugriff) wird jeweils der letzte angefragte Wert abgelegt, während in (speicher) der generierte Sinuswert des angefragten Wertes abgelegt wird. Der Proxy prüft also jedesmal, bevor er auf der Instanz des SinusGenerators den Sinuswert berechnen lässt, ob der angefragte Wert nicht schon generiert vorliegt. Ist dies der Fall, so liefert er ihn aus seinem Cache. Ansonsten wird er vom SinusGenerator angefordert und im Cache abgelegt.

 Abb. 2: Die Struktur des Beispiels




Beispiel

 Abb. 3: Screenshot der Java Applikation


 Abb. 4: Screenshot der Eiffel Applikation



[ Übersicht ] [ Beispiel ] [ Quellen ] [ Home Entwurfsmuster ]
Stand: 31.03.2005