Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porElisa Flores Cordero Modificado hace 9 años
1
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
2
Introducción Brigde se clasifica como un patrón estructural. OBJETIVO: Desacoplar una abstracción de su implementación de manera que ambas puedan cambiar independientemente. Una define el comportamiento, lo que se espera de una configuración. La otra define la forma en que se implementa dicho comportamiento. Brigde se clasifica como un patrón estructural. OBJETIVO: Desacoplar una abstracción de su implementación de manera que ambas puedan cambiar independientemente. Una define el comportamiento, lo que se espera de una configuración. La otra define la forma en que se implementa dicho comportamiento. 2 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
3
Problema Cuando una abstracción puede tener varias implementaciones posibles el camino habitual para acomodarlas es usar herencia. La herencia ata una implementación a la abstracción permanentemente, lo que hace la hace difícil de modificar, extender y rehusar la implementación y la abstracción independientemente. Cuando una abstracción puede tener varias implementaciones posibles el camino habitual para acomodarlas es usar herencia. La herencia ata una implementación a la abstracción permanentemente, lo que hace la hace difícil de modificar, extender y rehusar la implementación y la abstracción independientemente. 3 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
4
Aplicabilidad *Se desea evitar un enlace permanente entre la abstracción y su implementación. *Tanto las abstracciones como sus implementaciones deben ser extensibles por medio de subclases. *Cambios en la implementación de una abstracción no deben impactar en los clientes. *Se desea compartir una implementación entre múltiples objetos. *Se desea evitar un enlace permanente entre la abstracción y su implementación. *Tanto las abstracciones como sus implementaciones deben ser extensibles por medio de subclases. *Cambios en la implementación de una abstracción no deben impactar en los clientes. *Se desea compartir una implementación entre múltiples objetos. 4 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
5
Estructura De una forma simple se dice que esta hecha de dos partes: la parte abstracta y la implementación de la interfaz por las diferentes clases del grupo de objetos. 5 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
6
Estructura 6 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
7
Estructura 7 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
8
Estructura Abstraction La clase Asbtraction define la abstracción de la interfaz, proporcionando un comportamiento y estructura general. 8 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
9
Estructura 9 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
10
Estructura RefinedAbstraction Extiende la interface definida por Abstraction, de modo que captura las especificaciones o información necesaria proveniente del objeto que implementa la interfaz. 10 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
11
Estructura 11 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
12
Estructura Implementor Esta interfaz no tiene que corresponder exactamente a la interfaz de Abstraction, de hecho las dos interfaces pueden ser muy diferentes. Normalmente la interfaz Implementor proporciona sólo operaciones primitivas, y Abstraction define las operaciones de alto nivel basadas en estas operaciones primitivas. 12 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
13
Estructura 13 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
14
Estructura ConcreteImplementor Implementa la interfaz concreta de Implementor y define sus aplicaciones específicas. 14 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
15
Consecuencias *Desacopla interface e implementación: una implementación no es limitada permanentemente a una interface. *Este desacoplamiento fomenta las capas, que pueden conducir a un sistema mejor estructurado. *Mejora la extensibilidad: se puede extender las jerarquías de Abstraction e Implementor independientemente. *Esconde los detalles de la implementación a los clientes. *Desacopla interface e implementación: una implementación no es limitada permanentemente a una interface. *Este desacoplamiento fomenta las capas, que pueden conducir a un sistema mejor estructurado. *Mejora la extensibilidad: se puede extender las jerarquías de Abstraction e Implementor independientemente. *Esconde los detalles de la implementación a los clientes. 15 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
16
Fuerzas * Compartir los objetos de implementación subyacentes entre múltiples objetos de la abstracción. * Mayor flexibilidad cuando existen cambios en la implementación, y estos necesitan ser transparentes para el cliente. * Ayuda a clasificar en el diseño, cuales funcionalidades puede ser abstractas o generales, y cuales pertenecen a una clase de interfaz. * Compartir los objetos de implementación subyacentes entre múltiples objetos de la abstracción. * Mayor flexibilidad cuando existen cambios en la implementación, y estos necesitan ser transparentes para el cliente. * Ayuda a clasificar en el diseño, cuales funcionalidades puede ser abstractas o generales, y cuales pertenecen a una clase de interfaz. 16 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
17
Variantes Brigdes Automáticos: Son implementaciones para ser utilizadas para ellas mismas sin tener que interactuar con un usuario. Implementaciones Compartidas: Algunas clases de implementación pueden ser compartidas a través de múltiples objetos de aplicación. Implementación Única: Cuando sólo hay una implementación, no es necesario crear una clase abstracta Implementor. Sin embrago se puede hacer para mantener al cliente independiente de cambios en la implementación 17 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
18
Patrones relacionados Adapter, Singleton y Flyweight. 18 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos 2 011. Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.