Clase del 16/10/2007 (Diseño Avanzado con Objetos)
Proxy
intent: Proveer un sustituto para otro objeto para ganar acceso sobre el mismo
resumen: la clave del Proxy son 2 objetos del mismo tipo, el objeto real y el sustituto, en donde el sustituto controla el acceso al objeto real. El sustituto o Proxy tiene la misma interfaz que el objeto real, esto es para que el resto del sistema piense que que esta usando el objeto real, cuando en realidad usa el sustituto.
El Proxy es polimorfico al objeto que proxea.
problemas: el == no te dice que son objetos diferentes, pero el intent dice que deben ser el mismo
Decorator
intent: Agregar responsabilidad adicional a un objeto dinamicamente. Decorator provee una alternativa flexible a subclasificar para extender funcionalidad.
desventajas:
-No hay necesidad de subclasificar los decorators concretos de uno abstracto en un lenguaje no tipado como Smalltalk
- subclasifico mas que nada para organizar mi conocimiento porque no tengo orta herramienta para hacerlo (esto se hizo incapie en POO)
Adapter
intent:Convertir la interfaz de una clase es otra interfaz que el cliente espera. Adapter permite que algunas clases con diferentes interfaces trabajen entre si
diferencias: - el Decorator agrega funcionalidad, el Adapter no - el Decorator debe ser polimorfico, el Adapter no, solo con quien adapta - un Facade sabe el protocolo de un conjunto de objetos, un Adapter aparece a travez de la necesidad de tener que interactuar con otros objetos