Adapter, Bridge, Decorator.

Slides:



Advertisements
Presentaciones similares
S.O.L.I.D. AltNetHispano Carlos Peix
Advertisements

FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE
Curso de Java Capitulo 7: Continuación Poo Profesor:
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
POLIMORFISMO UNIDAD 4.
POLIMORFISMO "una interfaz, múltiples métodos".
Lenguaje de programación Java
Tomado de:
Arquitectura CLARO-TECNOTREE
Polimorfismo Unidad 4.
Programación Orientada a Objetos (P.O.O.)
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.
Fundamentos de Ingeniería de Software
Prof. César Luza Montero
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
Diseño y programación de
Encapsulamiento y Abstracción
Diagramas de clases Modelan la vista estática del sistema
Principios y Patrones de Diseño
HERENCIA.
4.- Orientación a Objetos Justo N. Hidalgo Sanz DEPARTAMENTO DE INGENIERÍA INFORMÁTICA.
Lic. Rosemary Torrico Bascopé
Tema 10: Interfaces Antonio J. Sierra.
Diseño de Sistemas. Patrones de Diseño. Geronimo Manso.
Patrones de Comportamiento: Patrón de Diseño Observer
FACTORY METHOD Edmundo Álvarez Jiménez Antonio Fernández Alonso
Javier Juárez González José Carlos Bernárdez Fdez. Alberto Barbosa León.
(c) P. Gomez-Gil, INAOE DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP.
Mediator (Mediador) Trabajo realizado por: Guillermo Palacios Pelayo
Diagramas de Clase Angela Carrillo R..
ANDRES FELIPE BORRERO SALAZAR COD ALEXANDRA CARREÑO SALAS COD LUCIO ANIBAL CRIOLLO COD ALEJANDRO RUIZ IDROBO COD
Bases de Datos Orientadas a Objetos (BDOO)
Programación orientada a objetos
Lenguajes de Programación Tema 3
Patrón Decorador Por: Robin Ochoa Falla.
Patrones de diseño DECORATOR Mario Rodríguez Martín
Realizado por: Manuel González Joaquín Windmuller José Lorenzo Rodríguez
Patrones de Diseño: Command
Luis Pereda Calvo1 Comportamiento de Objetos Estrategia (Strategy) *Política (Policy)
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.
Ingeniería en Sistemas de Información
PATRON PROTOTYPE Cristina Merino Héctor Carbajo Alicia Arroyo.
Metodología de Programación Ayudantía 4 lelagos.ublog.cl 2008.
Metodología de Programación Ayudantía 5 lelagos.ublog.cl 2009.
PATRÓN ADAPTER (Adaptador) Elena Moreno Ramírez Laura Sánchez Romero Aroa Solana Ruiz.
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.
Programación Orientada a Objeto
Ingeniería de Software
Programación orientada a objetos
Clasificación de Diagramas
 TCP/IP es un conjunto de protocolos. La sigla TCP/IP significa " Protocolo de control de transmisión/Protocolo de Internet " y se pronuncia "T-C-P-I-P".
Sistemas de eventos discretos.
Patrones de diseño equipo n.1
PATRONES DE DISEÑO. Patrones estructurales (Structural patterns)
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Simulación del patrón … (5)
Modelan la vista estática del sistema Elementos básicos: Clases Relaciones Objeto: Representación de una entidad discreta (real o abstracta) - Estado:
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
Un requerimiento es una condición o capacidad a la que el sistema (siendo construido) debe conformar [ Rational ]. Un requerimiento de software puede.
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,
Hilos Java Profesor Elian Rojas Berrocal
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.
Herencias Conceptos básicos i
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Prof. Manuel B. Sánchez. Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno.
Programación Orientada a Objetos Unidad 5. Los objetos son entidades que combinan estado Contiene toda la información denominados atributos REPASO Cada.
Geykel Raul Moreno Ceballos Sherpa Chairman & Chief Software Architect Adapter (Wrapper) Structural Pattern (Patrón Estructural)
APLICACIONES II ° Patrones De Diseño ° Esteban Omar Mora Delgado
Transcripción de la presentación:

Adapter, Bridge, Decorator. PATRONES DE DISEÑO

Adapter El patrón adapter convierte la interfaz de una clase en la interfaz que el cliente espera. El adapter permite que clases con interfaces incompatibles puedan trabajar juntas. Este patrón se denomina también wrapper.

Ejemplo:

APLICACIÓN: Se desea utilizar un clase ya existente pero cuya interfaz no coincide con la que se necesita. Se desea crear una clase que colabora con otras clases que no tienen interfaces compatibles. Se desea adaptar varias subclases ya existentes adaptando la interfaz de su clase padre común (object adapter).

Estructura - class adapter

Estructura - object adapter

Participantes Target: Define la interfaz especifica del dominio en el que se quiere hacer uso de la clase que se adapta. Client: Utiliza objetos que implementan la interfaz definida por el target. Adaptee: Presenta su interfaz original, que es la que se tiene que adaptar. Adapter: Adapta la interfaz del objeto adaptado a la definida por el target.

brige El patrón Bridge, también conocido como Handle/Body, es una técnica usada en programación para desacoplar una abstracción de su implementación, de manera que ambas puedan ser modificadas independientemente sin necesidad de alterar por ello la otra. Esto es, se desacopla una abstracción de su implementación para que puedan variar independientemente.

Se usa el patrón Bridge cuando: Se desea evitar un enlace permanente entre la abstracción y su implementación. Esto puede ser debido a que la implementación debe ser seleccionada o cambiada en tiempo de ejecución. Se desea compartir una implementación entre múltiples objetos (quizá usando contadores), y este hecho debe ser escondido a los clientes.

Estructura:

Participantes: Abstraction : define una interface abstracta. Mantiene una referencia a un objeto de tipo Implementor. RefinedAbstraction :extiende la interface definida por Abstraction Implementor : define la interface para la implementación de clases. Esta interface no se tiene que corresponder exactamente con la interface de Abstraction; de hecho, las dos interfaces pueden ser bastante diferente. ConcreteImplementor : implementa la interface de Implementor y define su implementación concreta.

Colaboraciones: Abstraction: emite los pedidos de los clientes a su objeto Implementor.

Decorator El patrón Decorator responde a la necesidad de añadir dinámicamente funcionalidad a un Objeto. Esto nos permite no tener que crear sucesivas clases que hereden de la primera incorporando la nueva funcionalidad, sino otras que la implementan y se asocian a la primera.

Estructura:

APlicabilidad Añadir objetos individuales de forma dinámica y transparente. Responsabilidades de un objeto pueden ser retiradas . Cuando la extensión mediante la herencia no es viable Hay una necesidad de extender la funcionalidad de una clase, pero no hay razones para extenderlo a través de la herencia. Hay la necesidad de extender dinámicamente la funcionalidad de un objeto y quizás quitar la funcionalidad extendida.