This post originated from an RSS feed registered with .NET Buzz
by -.
Original Post: Proxy-Pattern: Beschreibung und Beispiele
Feed Title: Norbert Eder - Living .NET
Feed URL: http://feeds.feedburner.com/NorbertEder-Livingnet
Feed Description: Copyright (c)2005, 2006 by Norbert Eder
Ein Proxy kann an vielen Stellen eingesetzt werden. Grundlegend handelt es sich dabei um einen Platzhalter f��r das tats��chlich aufzurufende Objekt. Das hei��t, es leitet vom gleichen Interface ab, besitzt die gleichen Methoden, leitet aber alle Anfragen an das dahinterliegende Objekt weiter. Aber welchen Vorteil besitzt dieses Pattern nun?
Durch dieses Pattern ist es m��glich, ��nderungen und Pr��fungen einzuf��hren, ohne das eigentliche Objekt ab��ndern zu m��ssen. So k��nnen beispielsweise Sicherheitspr��fungen stattfinden (Protection Proxy). Dies bedeutet, dass das Proxy-Objekt zuerst ��berpr��ft, ob der Aufrufer ��ber die notwendigen Rechte verf��gt, bevor der Aufruf weitergeleitet und abgearbeitet wird. Weiters wird h��ufig ein Remote Proxy verwendet, der die Anfrage kodiert, an das echte Objekt sendet, die Antwort dekodiert und zur��ck gibt. Dieser Vorgang ist unter anderem dann interessant, wenn Application Domains erstellt werden sollen, die zur Laufzeit die M��glichkeit bieten sollen, entladen werden zu k��nnen. Schlie��lich w��re da noch Cache Proxies, die bestimmte Daten des eigentlichen Objektes cachen und so diverse Vorg��nge beschleunigen k��nnen. Das sind jedoch nicht die einzigen M��glichkeiten. So gibt es noch Synchronization Proxies und viele weitere.
Ein einfaches Grundger��st eines Proxies findet sich nachfolgend:
Dies stellt die einfachste Variante eines Proxies dar. Ein vereinfachter Protection Proxy k��nnte beispielsweise so aussehen (Erweiterung des obigen Beispiels):
Ich m��chte nur darauf hinweisen, dass ein Protection Proxy entsprechend abgesichert sein sollte. Die obige Variante dient lediglich der Veranschaulichung und sollte so nicht verwendet werden.