
El patrón Proxy se utiliza como intermediario para acceder a un objeto, permitiendo controlar el acceso a él.
Problema que soluciona
Necesitamos crear objetos que consumen muchos recursos, pero no queremos instanciarlos a no ser que el cliente lo solicite o se cumplan otras condiciones determinadas.
Participantes y Relaciones
Subject: Interfaz o clase abstracta que proporciona un acceso común al objeto real y su representante (proxy).
Proxy: Mantiene una referencia al objeto real. Controla la creación y acceso a las operaciones del objeto real.
RealSubject: Define el objeto real representado por el Proxy.
Implementación
Tenemos un objeto padre Asunto del que heredan otros dos:AsuntoReal y Proxy, todos ellos tienen un método petición(). El cliente llamaría al método petición() de Asunto, el cual pasaría la petición a Proxy, que a su vez instanciaría AsuntoReal y llamaría a su petición().
Esto nos permite controlar las peticiones a AsuntoReal mediante el Proxy, por ejemplo instanciando AsuntoReal cuando sea necesario y eliminándolo cuando deje de serlo.
Proxy (patrón de diseño) - Wikipedia, la enciclopedia libre
No hay comentarios:
Publicar un comentario