Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

PATRON DE DISEÑO ADAPTER

No description
by

yerard ric

on 15 March 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of PATRON DE DISEÑO ADAPTER

PATRON ADAPTER EXPLICACION Y MODELO UML Ejemplo Supongamos que debemos usar objeto llamado "NombreDetalle" con una estructura especifica, pero utilizando un obejeto ya existente llamado "Nombre". ADAPTER Definición de un patrón CLASIFICACIÓN: estructural.

INTENCIÓN: 
Transformar la interfaz de un objeto existente en otra que los clientes puedan utilizar.

De este modo, una clase que no puede utilizar la primera, puede hacer uso de ella a través de la segunda. Patrón ADAPTER
Diagrama de interacción Patrón ADAPTER
La solución Patrones relacionados:
Bridge: separa una interfaz de su aplicación, de manera que pueda variar fácilmente y de forma independiente.
Decorator: no altera la interfaz, pero agrega responsabilidad.
Proxy: define un representante o sustituto de otro objeto sin cambiar su interfaz.
Facade: hace que una interfaz sea más simple. Puede tener uno o muchos Adaptees.
También puede agregar funcionalidad a todos los Adaptees a la vez.
Es más flexible, ya que escribe poco código y delega al Adaptee.
Como se trata de manera general el comportamiento de todos los Adaptee, si una subclase agrega nuevas funcionalidades no se puede adaptar directamente. En ese caso se podría tener un adaptador por cada tipo de subclase.
Motivación: a veces, una clase no se puede reutilizar sólo porque su interfaz no coincide con la interfaz que una aplicación requiere.  Class Adapter: utiliza herencia múltiple Estructura:
Object Adapter: utiliza composición
1-Cada patrón describe un problema que ocurre una y otra vez en nuestro entorno y describe también el núcleo de la solución al problema, de forma que puede utilizarse un millón de veces sin tener que hacer dos veces lo mismo.

2- Un patrón de diseño es una descripción de clases y objetos comunicándose entre sí adaptada para resolver un problema de diseño general en un contexto particular. También conocido como: Wrapper. (envoltura)
 
Aplicabilidad:
Se utiliza este patrón cuando se necesita utilizar una clase existente, pero su interfaz no coincide con la que se necesita crear una clase reutilizable que coopera con clases que no tienen interfaces compatibles.
 
Utilizar varias subclases existentes, pero como es poco práctico adaptar cada interfaz, se crea un objeto que adapte la interfaz de la clase padre. Participantes

Target: define la interfaz específica que el cliente utiliza.
Client: interactúa con los objetos según la interfaz de Target.
Adaptee: define una interfaz existente que necesita ser adaptada.
Adapter: adapta la interfaz de Adaptee a la interfaz de destino. Colaboraciones

Client-Adapter: el cliente llama a las operaciones de una instancia de Adapter. 
Adapter-Adaptee: el adaptador llama a las operaciones de Adaptee, quienes realizan la petición. Implementación:
Crear una clase Adapter que hereda públicamente de Target y tiene una instancia de Adaptee o hereda en forma privada de este. 1.Uso de operaciones abstractas: se definen operaciones abstractas en el cliente y el Adapter debe implementarlas  y adaptar el objeto Adaptee. Pluggable Adapters: (Adaptadores enchufables) Un objeto adaptador: 2.Uso de objetos delegados mediante Strategy: el cliente puede utilizar un Strategy para asignarse un tipo de AdapterStrategy. 3.Adaptadores parametrizados:  el adaptador almacena un bloque para cada solicitud individual. No soporta adaptación de subclases. ¿Cuánto se debe adaptar? La cantidad de métodos a adaptar es proporcional a la interface que se debe soportar como Target.
 
¿El adaptador solo wrappea una clase? No, puede haber casos en que wrapee más de un Adaptee. Preguntas Patrón ADAPTER
El problema CODIGO GRACIAS



UNIVESIDAD CENTRAL BOGOTA
2013
Full transcript