La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

PATRÓN ADAPTER (Adaptador) Elena Moreno Ramírez Laura Sánchez Romero Aroa Solana Ruiz.

Presentaciones similares


Presentación del tema: "PATRÓN ADAPTER (Adaptador) Elena Moreno Ramírez Laura Sánchez Romero Aroa Solana Ruiz."— Transcripción de la presentación:

1 PATRÓN ADAPTER (Adaptador) Elena Moreno Ramírez Laura Sánchez Romero Aroa Solana Ruiz

2 ÍNDICE 1. Introducción 2. Adapter 1. Definición 2. Aplicabilidad 3. Estructura 4. Participantes 5. Consecuencias 6. Detalles de implementación 3. Bibliografía

3 INTRODUCCIÓN  ¿Qué es un patrón de diseño? Es la base para la búsqueda de soluciones a problemas comunes, es una solución a un problema de diseño no trivial que es efectiva y reusable. Tipos: Creacionales. Estructurales Comportamiento.

4 INTRODUCCIÓN ¿Qué es un patrón estructural? Son los patrones de diseño que se ocupan de cómo combinan las clases y los objetos para formar estructuras más grandes. Tipos: Adapter Bridge Composite Decorator Facade

5 ADAPTER Definición Convierte una interfaz de una clase en la interfaz que el cliente espera. Adapter permite a las clases cuyas interfaces son incompatibles trabajar juntas. Este patrón se denomina también wrapper (envoltorio).

6 ADAPTER Aplicabilidad Se quiere integrar una clase ya existente pero que no podemos modificar en una nueva jerarquía de clases. Crear una clase reusable que coopera con clases no relacionadas. Se pretende adaptar varias subclases ya existentes adaptando la interfaz de su clase padre (adaptador de objetos).

7 ADAPTER Estructura: La adaptación la podemos realizar de dos maneras: Herencia Múltiple (class adapter) Composición (object adapter)

8 ADAPTER Adaptación por herencia múltiple. Código de ejemplo: public class Usuario{ protected String nombre; protected String password;... public Usuario (String nombre, String password){... } public String GetNombre (){ return nombre; } public String GetPassword (){ return password; }...}

9 ADAPTER public class BuenUsuario extends Usuario{ public BuenUsuario (String nombre, String password){ super (nombre, password); } public String getNombre (){ return GetNombre(); } public String getPassword (){ return GetPassword(); } }

10 ADAPTER UML:

11 ADAPTER Adaptación por composición de objetos Código de ejemplo: public class Pila{ private Vector valores; public Pila(){ valores = new Vector(); } public void push (Object o){ valores.add (o); } public Object pop (){ Object o = valores.lastElement(); valores.remove (o); return o; }

12 ADAPTER UML:

13 ADAPTER Participantes Target  define la interfaz especifica del dominio que usa el Client. Client  colabora con objetos que se ajustan a la interfaz Target Adaptee  Define una interfaz existente que necesita ser adaptada. Adapter  Adapta la interfaz de Adaptee a la interfaz Target.

14 ADAPTER Consecuencias: Class Adapter: - No sirve para adaptar una clase y todas sus subclases. - Hace que el adapter herede el comportamiento del Adaptee. - Provoca la creación de un único objeto.

15 ADAPTER Consecuencias: Object Adapter: - Permite que un adapter funcione con varios Adaptee. - Hace más complicado heredar el comportamiento del Adaptee.

16 ADAPTER Detalles de implementación: - Class adapter es menos flexible que el object adapter. - El object adapter permite que un adaptador trabaje con muchos Adaptee.

17 Bibliografía Wikipedia www.programacion.net Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides, Addison-Wesley, 1995


Descargar ppt "PATRÓN ADAPTER (Adaptador) Elena Moreno Ramírez Laura Sánchez Romero Aroa Solana Ruiz."

Presentaciones similares


Anuncios Google