ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Aplicabilidad


Enviado por   •  6 de Abril de 2015  •  Informe  •  445 Palabras (2 Páginas)  •  141 Visitas

Página 1 de 2

Aplicabilidad[editar]

El patrón proxy se usa cuando se necesita una referencia a un objeto más flexible o sofisticada que un puntero. Dependiendo de la función que se desea realizar con dicha referencia podemos distinguir diferentes tipos de proxies:

proxy remoto: representante local de un objeto remoto.

proxy virtual: crea objetos costosos bajo demanda (como la clase ImagenProxy en el ejemplo de motivación).

proxy de protección: controla el acceso al objeto original (ejemplo de proxy de protección: [1])

proxy de referencia inteligente: sustituto de un puntero que lleva a cabo operaciones adicionales cuando se accede a un objeto (ej. contar número de referencias al objeto real, cargar un objeto persistente bajo demanda en memoria, control de concurrencia de acceso tal como bloquear el objeto para impedir acceso concurrente, …).

Participantes[editar]

La clase Proxy : mantiene una referencia al objeto real (en el siguiente ejemplo se le denomina _sujetoReal) y proporciona una interfaz idéntica al sujeto (la clase Sujeto). Además controla el acceso a dicho objeto real y puede ser el responsable de su creación y borrado. También tiene otras responsabilidades que dependen del tipo de proxy:

proxy remoto: responsable de codificar una petición y sus argumentos, y de enviarla al objeto remoto.

proxy virtual: puede hacer caché de información del objeto real para diferir en lo posible el acceso a este.

proxy de protección: comprueba que el cliente tiene los permisos necesarios para realizar la petición.

La clase Sujeto: define una interfaz común para el proxy (Proxy) y el objeto real (de la clase SujetoReal), de tal modo que se puedan usar de manera indistinta.

La clase SujetoReal: clase del objeto real que el proxy representa.

Colaboraciones.[editar]

Dependiendo de la clase de proxy, el objeto proxy redirige las peticiones al objeto real que representa.

Ejemplos de funcionamiento:

Diagrama de clases para un ejemplo del patrón proxy.[2]

Diagrama de secuencia para un ejemplo en el que no se utiliza el patrón proxy. [3]

Diagrama de secuencia para un ejemplo en el que se utiliza el patrón proxy.[4]

Consecuencias.[editar]

El uso de un proxy introduce un nivel de indirección adicional con diferentes usos:

Un proxy remoto oculta el hecho de que un objeto reside en otro espacio de direcciones.

Un proxy virtual puede realizar optimizaciones, como la creación de objetos bajo demanda.

El proxy de protección y las referencias inteligentes permiten realizar diversas tareas de mantenimiento adicionales al acceder a un objeto.

Además, su uso también permite realizar una optimización COW (copy-on-write) , puesto que copiar un

...

Descargar como (para miembros actualizados) txt (3 Kb)
Leer 1 página más »
Disponible sólo en Clubensayos.com