Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1 Proxy Pattern Vorlesung Design Patterns Sieglinde Heinrich 21.04.2004

Ähnliche Präsentationen


Präsentation zum Thema: "1 Proxy Pattern Vorlesung Design Patterns Sieglinde Heinrich 21.04.2004"—  Präsentation transkript:

1 1 Proxy Pattern Vorlesung Design Patterns Sieglinde Heinrich

2 2 Abgrenzung

3 3 Absicht Stellvertreter für ein anderes Objekt bietet Kontrolle über Objekt- Erzeugung und –Zugriff Motivation kostspielige Objekt- Erzeugung verzögern (zB: große Bilder) Remote Objekt Sicherheitsfunktion Cache Idee Bild- Stellvertreter (Proxy) verwenden Bild- Stellvertreter verhält sich aus Client- Sicht wie Bild Bild- Stellvertreter erzeugt Bild bei Bedarf

4 4 Proxy Pattern - Schema

5 5 Konkretes Beispiel

6 6 public interface IVehicle { public void start(); public void stop(); public void forward(); public void reverse(); public String getName(); }

7 7 public class Car implements IVehicle { private String name; public Car(String name) {this.name=name;} public void start() { System.out.println("Car " + name + " started"); } public void stop() {…} public void forward() {…} public void reverse() {…} public String getName() {…} }

8 8 public class VehicleProxy implements IVehicle { private IVehicle v; public VehicleProxy(IVehicle v) { this.v=v; } public void start() { System.out.println("VehicleProxy: Begin of start()"); v.start(); System.out.println("VehicleProxy: End of start()"); } public void stop() {…} public void forward() {…} public void reverse() {…} public String getName() {…} }

9 9 public class Client { public static void main(String[] args) { new Client(); } public Client() { IVehicle c = new Car("Audi A7"); IVehicle v = new VehicleProxy(c); v.start(); v.forward(); v.stop(); }

10 10 Fall- Beispiel Protection Proxy (Zugriffskontrolle) Remote Zugriff Ressourcen

11 11 Lösung Kommunikation über den Proxy lokalisiert entferntes Objekt und kommuniziert mit ihm Authentifikationsprüfung unötige Zugriffe werden verhindert zufrieden stellendes Ergebnis

12 12 Konsequenzen Der Remote-Proxy Der Schutz-Proxy übernimmt zusätzliche Sicherheitsfunktionen Der Cache-Proxy speichert dieo Daten einer Komponente zwischen

13 13 Implementation (technisch) 1.Verantwortlichkeiten dem Stellvertreter zuweisen 2.Abstrakte Basisklasse einführen 3.Funktionen des Stellvertreters implementieren 4.Original und Client von Verantwortlichkeit lösen 5.Original und Proxy verbinden 6.Client vom Original lösen

14 14 Weitere Proxy Varianten 1.Virtueller Proxy 2.Schutz- Proxy 3.Synchronisierungs- Proxy 4.Remote- Proxy 5.Firewall- Proxy 6.Counting- Proxy 7.Cache- Proxy

15 15 Vielen Dank


Herunterladen ppt "1 Proxy Pattern Vorlesung Design Patterns Sieglinde Heinrich 21.04.2004"

Ähnliche Präsentationen


Google-Anzeigen