You are on page 1of 15

Convertir la interfaz de una fase en otra distinta que espera el cliente.

Permite que un conjunto de clases con interfaces incompatibles trabajen juntas. Tambin conocido como Wrapper(Envoltorio).

Usar el patrn adapter cuando: Quieras utilizar una clase ya existente, cuya interfaz no coincide con la que necesitas Quieres crear una clase reutilizable que coopere con otras no relacionadas, es decir con clases que pueda no tener una interfaz compatible. (Solo object adapter) Se necesita varias subclases existentes pero no sea practico adaptar sus interfaces.

Client: Es el principal agente en la formacin de objetos para la interfaz Target.

Target: Interfaz del dominio especfico que usa el Client.


Adaptee: Es la interfaz ya existente que necesita adaptarse. Adapter: Es quien adapta la interfaz del Adaptee a la interfaz Target.

Combina objetos en estructuras de rbol para representar jerarquas de parte-todo. Permite que los clientes traten de manera uniforme a los objetos individuales y a los compuestos.
SE usa cuando se quiere componer objetos en estructuras tipo rbol para representar su jerarquizacin, y permitir al usuario tratar los objetos tanto individual como grupalmente de manera uniforme basado en una composicin recursiva. Componer objetos en estructuras arbreas para representar jerarquas todo-parte. Manipular todos los objetos del rbol de manera uniforme

Cuando desarrollar una aplicacin como un editor de dibujos y sistemas de circuitos que permiten a los usuarios constituir diagramas complejos desde componentes simples. (Interfaces Graficas). Los objetos simples(hojas) y los contenedores de ellos estn en diferentes maneras, aunque los clientes tratan ambos en la misma manera.

La clave del patrn Composite:Una clase abstracta que representa ambos objetos los simples (hojas) y sus contenedores.

Componente: declara la interfaz para los objetos en la composicin, implementa comportamientos por defecto comunes para todas las clases apropiadamente, declara una interfaz para acceso y manejo de sus componentes Hijo.

Hoja: representa objetos de la composicin que no poseen hijos, define un comportamiento para objetos simples.
Compuesto: define el comportamiento de los objetos que poseen hijos, guarda los mismos, e implementa operaciones relacionadas con los hijos en la interfaz del Componente.

Proporcionar un representante o sustituto de otro objeto para controlar el acceso a ste.

Retrasar el coste de crear e inicializar un objeto hasta que es realmente necesario. Por ejemplo, no abrir las imgenes de un documento hasta que no son visibles.

El patrn proxy se usa cuando se necesita una referencia a un objeto ms flexible o sofisticada que un puntero. Dependiendo de la funcin que se desea realizar con dicha referencia podemos distinguir diferentes tipos de proxies.

Proxy remoto: representa un objeto en otro espacio de direcciones Proxy virtual: crea objetos costosos por encargo (como la clase ImageProxy en el ejemplo de motivacin) Proxy de proteccin: controla el acceso a un objeto Referencia inteligente: sustituto de un puntero que lleva a cabo operaciones adicionales cuando se accede a un objeto (ej. contar el nmero de referencias, cargar un objeto persistente en memoria, bloquear el objeto para impedir acceso concurrente, ...)

Proxy: Mantiene una referencia al objeto real, mientras que proporciona una interfaz idntica a la del objeto real (Real Subject) y controla el acceso a este objeto, siendo responsable de crearlo y borrarlo. Subject: Define una interfaz comn para el proxy y el objeto real. RealSubject: Es la clase del objeto real que el proxy representa.

You might also like