domingo, 10 de mayo de 2009
Proxy

Proxy es un sustituto de otro objeto, para controlar el acceso a él, Proxy actúa en lugar del verdadero objeto y ofrece la misma interfaz, y las solicita en el objeto cuando es necesario.

Características generales de este patrón:

Nombre:

Proxy.

También conocido como:

Surrogate.

Propósito:

Es un sustituto de otro objeto, para controlar el acceso a él.

Aplicabilidad:

Este patrón se utiliza generalmente cuando:

· Es necesario una referencia a un objeto más sofisticada que el simple puntero o referencia a objeto.

· Proxy remoto: Cuando usted necesita un representante local de un objeto en otro espacio de direcciones (JVM). 

· Proxy virtual: Para postergar la creación de objetos caros hasta el momento en que se necesitan.

· Proxy de protección: Para controlar el acceso al objeto original.

Estructura:



Participantes:

· Subject: Define la interfaz común para el RealSubject y el Proxy, de modo que pueda usarse un Proxy en cualquier sitio en el que se espere un RealSubject.

· RealSubject: Define el objeto real que representa el Proxy.

· Proxy: Mantiene una referencia al sujeto real y proporciona la misma interfaz, controla el acceso al sujeto real y puede ser responsable de crearlo y destruirlo.

Consecuencias:

· Un proxy puede ocultar el hecho de que un objeto reside en un espacio de direcciones diferente (proxy remoto).

· Puede llevar a cabo optimizaciones tales como crear un objeto por encargo (invocar imagen). 

· Permiten realizar tareas de mantenimiento adicionales cuando se accede a un objeto (Proxy de protección y de referencias inteligentes).

· Se obtiene una administración transparente de los servicios del objeto real.

Patrones relacionados:

· Adapter.

· Decorator.

· Iterator.

Etiquetas: , ,

 
posted by Camilo Mojica at 21:34 | Permalink |


0 Comments: