SlideShare uma empresa Scribd logo
1 de 14
PATRONES ESTRUCTURALES :
PATRÓN BRIDGE.
Grupo 2
PROPÓSITO.
• Separa abstracción e implementación, así ambas pueden variar de forma
independiente. A diferencia del patrón Adapter, considera como las interfaces son
implementadas, en este sentido asocia abstracción y sus potenciales
implementaciones. Suele aplicarse al empezar un diseño, para permitir que las
abstracciones e implementaciones evolucionen independientemente.
ESTRUCTURA.
• La estructura de un Bridge se puede clasificar en dos partes: la parte abstracta y la
implementación de la interfaz por las diferentes clases del grupo de objetos.
• Los participantes:
• Abstraction:
• Define la abstracción de la interfaz, manteniedo una referencia a un objeto que
implementa la interfaz.
• RefinedAbstraction:
• Amplía la interfaz definida por la abstracción, de modo que captura las
especificaciones o información necesaria proveniente del objeto que implementa la
interfaz.
• Implementor:
• Define la interfaz de la aplicación clases. Esta interfaz no tiene que corresponder
exactamente a la interfaz de abstracción, de hecho las dos interfaces pueden ser
muy diferentes. Normalmente la interfaz Implementor proporciona sólo
operaciones primitivas, y define la abstracción de alto nivel sobre la base de estas
operaciones primitivas.
PROBLEMA.
SOLUCIÓN
IMPLEMENTACIÓN.
• Identifica las dimensiones ortogonales de tus clases. Estos conceptos independientes
pueden ser: abstracción/plataforma, dominio/infraestructura, front end/back end, o
interfaz/implementación.
• Comprueba qué operaciones necesita el cliente y defínelas en la clase base de abstracción.
• Determina las operaciones disponibles en todas las plataformas. Declara aquellas que
necesite la abstracción en la interfaz general de implementación.
• Crea clases concretas de implementación para todas las plataformas de tu dominio, pero
asegúrate de que todas sigan la interfaz de implementación.
• Dentro de la clase de abstracción añade un campo de referencia para el tipo de
implementación. La abstracción delega la mayor parte del trabajo al objeto de la
implementación referenciado en ese campo.
• Si tienes muchas variantes de lógica de alto nivel, crea abstracciones refinadas para cada
variante extendiendo la clase base de abstracción.
• El código cliente debe pasar un objeto de implementación al constructor de la abstracción
para asociar el uno con el otro. Después, el cliente puede ignorar la implementación y
trabajar solo con el objeto de la abstracción.
GRACIAS.
INTEGRANTES.
• Meneses Perez, Damaris.
• Sudrio Prudencio, Deysi.
• Bovis Llacua, Lady.
• Pinchi Del Aguila, Junior.
• Cano Justo, Britney Thalia.

Mais conteúdo relacionado

Semelhante a PATRÓN BRIDGE: SEPARA ABSTRACCIÓN E IMPLEMENTACIÓN

Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de softwareIker Canarias
 
Patrones de diseño de GoF
Patrones de diseño de GoFPatrones de diseño de GoF
Patrones de diseño de GoFYaskelly Yedra
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosJaziel Torres
 
Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1Cristobal Costa Soria
 
Proyecto De Tecnica De Programacioin I I
Proyecto De Tecnica De Programacioin  I IProyecto De Tecnica De Programacioin  I I
Proyecto De Tecnica De Programacioin I IAmistadLealtad
 
Introducción a redes ti09312
Introducción a redes ti09312Introducción a redes ti09312
Introducción a redes ti09312Maestros Online
 
Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)ale abad aguilar
 
Arquitectura de Software Capitulo 7.pptx
Arquitectura de Software Capitulo 7.pptxArquitectura de Software Capitulo 7.pptx
Arquitectura de Software Capitulo 7.pptxEverestMedinilla3
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño Ijjegonzalezf
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Frameworkexcedesoft
 
PD1_7moA_TS3_JavierLogroño.pptx
PD1_7moA_TS3_JavierLogroño.pptxPD1_7moA_TS3_JavierLogroño.pptx
PD1_7moA_TS3_JavierLogroño.pptxEddyJavierLogrooLen
 
Mejores a nuestros proyectos de Software
Mejores a nuestros proyectos de SoftwareMejores a nuestros proyectos de Software
Mejores a nuestros proyectos de SoftwareJose Luis Bugarin Peche
 
ASP.NET MVC (2011)
ASP.NET MVC (2011)ASP.NET MVC (2011)
ASP.NET MVC (2011)wildtango
 
Arquitectura multicapa
Arquitectura multicapaArquitectura multicapa
Arquitectura multicapaHugo Herrera
 

Semelhante a PATRÓN BRIDGE: SEPARA ABSTRACCIÓN E IMPLEMENTACIÓN (20)

Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de software
 
Abstract Factory
Abstract FactoryAbstract Factory
Abstract Factory
 
Patrones de diseño de GoF
Patrones de diseño de GoFPatrones de diseño de GoF
Patrones de diseño de GoF
 
Fundamentos de Red
Fundamentos de RedFundamentos de Red
Fundamentos de Red
 
Modelos de red
Modelos de redModelos de red
Modelos de red
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1
 
Introducción a redes ti09312
Introducción a redes ti09312Introducción a redes ti09312
Introducción a redes ti09312
 
Proyecto De Tecnica De Programacioin I I
Proyecto De Tecnica De Programacioin  I IProyecto De Tecnica De Programacioin  I I
Proyecto De Tecnica De Programacioin I I
 
Introducción a redes ti09312
Introducción a redes ti09312Introducción a redes ti09312
Introducción a redes ti09312
 
Facade
FacadeFacade
Facade
 
Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)
 
Arquitectura de Software Capitulo 7.pptx
Arquitectura de Software Capitulo 7.pptxArquitectura de Software Capitulo 7.pptx
Arquitectura de Software Capitulo 7.pptx
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Framework
 
PD1_7moA_TS3_JavierLogroño.pptx
PD1_7moA_TS3_JavierLogroño.pptxPD1_7moA_TS3_JavierLogroño.pptx
PD1_7moA_TS3_JavierLogroño.pptx
 
Mejores a nuestros proyectos de Software
Mejores a nuestros proyectos de SoftwareMejores a nuestros proyectos de Software
Mejores a nuestros proyectos de Software
 
ASP.NET MVC (2011)
ASP.NET MVC (2011)ASP.NET MVC (2011)
ASP.NET MVC (2011)
 
Patrones de Diseño
Patrones de DiseñoPatrones de Diseño
Patrones de Diseño
 
Arquitectura multicapa
Arquitectura multicapaArquitectura multicapa
Arquitectura multicapa
 

Último

SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOSISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOELIAMARYTOVARFLOREZD
 
Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024Leonardo J. Caballero G.
 
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxMacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxcalzadillasluis134
 
Presentación de html, css y javascript.
Presentación  de html, css y javascript.Presentación  de html, css y javascript.
Presentación de html, css y javascript.CeteliInmaculada
 
Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024Leonardo J. Caballero G.
 
Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++luzgaray6
 

Último (6)

SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOSISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
 
Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024
 
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxMacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
 
Presentación de html, css y javascript.
Presentación  de html, css y javascript.Presentación  de html, css y javascript.
Presentación de html, css y javascript.
 
Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024
 
Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++
 

PATRÓN BRIDGE: SEPARA ABSTRACCIÓN E IMPLEMENTACIÓN

  • 3. • Separa abstracción e implementación, así ambas pueden variar de forma independiente. A diferencia del patrón Adapter, considera como las interfaces son implementadas, en este sentido asocia abstracción y sus potenciales implementaciones. Suele aplicarse al empezar un diseño, para permitir que las abstracciones e implementaciones evolucionen independientemente.
  • 5. • La estructura de un Bridge se puede clasificar en dos partes: la parte abstracta y la implementación de la interfaz por las diferentes clases del grupo de objetos.
  • 6. • Los participantes: • Abstraction: • Define la abstracción de la interfaz, manteniedo una referencia a un objeto que implementa la interfaz. • RefinedAbstraction: • Amplía la interfaz definida por la abstracción, de modo que captura las especificaciones o información necesaria proveniente del objeto que implementa la interfaz. • Implementor: • Define la interfaz de la aplicación clases. Esta interfaz no tiene que corresponder exactamente a la interfaz de abstracción, de hecho las dos interfaces pueden ser muy diferentes. Normalmente la interfaz Implementor proporciona sólo operaciones primitivas, y define la abstracción de alto nivel sobre la base de estas operaciones primitivas.
  • 8.
  • 10.
  • 12. • Identifica las dimensiones ortogonales de tus clases. Estos conceptos independientes pueden ser: abstracción/plataforma, dominio/infraestructura, front end/back end, o interfaz/implementación. • Comprueba qué operaciones necesita el cliente y defínelas en la clase base de abstracción. • Determina las operaciones disponibles en todas las plataformas. Declara aquellas que necesite la abstracción en la interfaz general de implementación. • Crea clases concretas de implementación para todas las plataformas de tu dominio, pero asegúrate de que todas sigan la interfaz de implementación. • Dentro de la clase de abstracción añade un campo de referencia para el tipo de implementación. La abstracción delega la mayor parte del trabajo al objeto de la implementación referenciado en ese campo. • Si tienes muchas variantes de lógica de alto nivel, crea abstracciones refinadas para cada variante extendiendo la clase base de abstracción. • El código cliente debe pasar un objeto de implementación al constructor de la abstracción para asociar el uno con el otro. Después, el cliente puede ignorar la implementación y trabajar solo con el objeto de la abstracción.
  • 14. INTEGRANTES. • Meneses Perez, Damaris. • Sudrio Prudencio, Deysi. • Bovis Llacua, Lady. • Pinchi Del Aguila, Junior. • Cano Justo, Britney Thalia.