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

Slides:



Advertisements
Presentaciones similares
FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE
Advertisements

FACHADA COMPOSITOR MEMENTO
Adapter, Bridge, Decorator.
Curso de Java Capitulo 7: Continuación Poo Profesor:
POLIMORFISMO UNIDAD 4.
Herencia en C#.
POLIMORFISMO "una interfaz, múltiples métodos".
Lenguaje de programación Java
Uso de patrones de arquitectura
Herencia simple y multiple
Arquitectura CLARO-TECNOTREE
Polimorfismo Unidad 4.
Patrones de Diseño GEYFFER ALEXANDER ACOSTA CRISTHIAN DOUGLAS CASTRO
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Encapsulamiento y Abstracción
Genericidad Los datos de aplicaciones muy diferentes puede modelarse con frecuencia a partir de tipos de datos cuyas operaciones no dependen del tipo de.
Principios y Patrones de Diseño
HERENCIA.
SISTEMAS DE LA INFORMACIÓN
Polimorfismo Lenguajes de Programación II Corporación Universitaria del Caribe CECAR.
Introducción a Java II.
Lic. Rosemary Torrico Bascopé
Abstracción de los datos y Orientación a Objeto Clase 13.
El patrón de diseño Proxy Raúl Heras Alberto Blasco José Manuel Arévalo.
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Tema 10: Interfaces Antonio J. Sierra.
Diseño de Sistemas. Patrones de Diseño. Geronimo Manso.
FACTORY METHOD Edmundo Álvarez Jiménez Antonio Fernández Alonso
Abstract Factory Diseño y Aplicaciones Patricia Cano Fernández Rocío González García Irene Zamora del Río.
7. Interfaces Herencia múltiple Interfaces Comparable y Comparator
Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
Patrones Creacionales
Lenguajes de Programación Tema 3
Patrón Decorador Por: Robin Ochoa Falla.
Patrones de diseño DECORATOR Mario Rodríguez Martín
Herramientas de polimorfismo y herencia en C++
Luis Pereda Calvo1 Comportamiento de Objetos Estrategia (Strategy) *Política (Policy)
Juan Manuel Perdigón Mario Felipe Monsalve
3.- Introducción a Patrones de Diseño
Son la base para la búsqueda de soluciones o problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.
MEMENTO Patrón de Comportamiento Ana María Mateo Jorge P. Andrés
PATRON PROTOTYPE Cristina Merino Héctor Carbajo Alicia Arroyo.
Metodología de Programación Ayudantía 4 lelagos.ublog.cl 2008.
UNIDAD VI Recursos esenciales de Java LSC. Natalia Rodríguez Castellón.
Vista de interacción  Una vista de interacción muestra el flujo de control requerido que se establece entre los objetos.
PATRONES DE DISEÑO.
Metodología de Programación Ayudantía 5 lelagos.ublog.cl 2009.
Patrón Iterator Santiago García Sánchez Rebeca Marcos Salcedo Mª Cristina Zapatero Gironda.
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Unidad 2.1: INTRODUCCIÓN A LA ORIENTACIÓN A OBJETOS.
Presentado por: PABLO ANDRES DIAZ SAIN HASSAM CAICEDO
Detalles Generales sobre Java
Patrones de diseño equipo n.1
PATRONES DE DISEÑO Y ESTRUCTURAS DE DATOS
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Simulación del patrón … (5)
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
HERENCIA.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
Patrones de Diseño Agustín J. González ElO329.
Patrón de Diseño Brigde ( Handle/Body) Calderón Márquez Jorge Alberto Posgrado de Ciencia e Ingeniería en Computación. Tecnología Orientada a Objetos.
Un paseo por las nuevas funciones. Patrones de Diseño Por si no ha quedado claro, los Patrones de Diseño, son el esqueleto de las soluciones a problemas.
Herencias Conceptos básicos i
Programación Orientada a Objetos Unidad 5. Los objetos son entidades que combinan estado Contiene toda la información denominados atributos REPASO Cada.
Factorías e Iterables Introducción del concepto de patrón de diseño Construcción de tipos para recorridos con for extendido Fundamentos de Programación.
Concepto de Tipo y Subtipo Diseño e Implementación Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 10 Versión.
Prof. Manuel B. Sánchez. Es un mecanismo y uno de los pilares de la POO que permite definir nuevas clases a partir de otras preexistentes. La Herencia.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Geykel Raul Moreno Ceballos Sherpa Chairman & Chief Software Architect Adapter (Wrapper) Structural Pattern (Patrón Estructural)
Transcripción de la presentación:

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

Í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

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.

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

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).

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).

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

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; }...}

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(); } }

ADAPTER UML:

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; }

ADAPTER UML:

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.

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.

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

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.

Bibliografía Wikipedia Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides, Addison-Wesley, 1995