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.

Slides:



Advertisements
Presentaciones similares
Curso de java básico (scjp)
Advertisements

FACHADA COMPOSITOR MEMENTO
Adapter, Bridge, Decorator.
Lenguaje Unificado de Modelado
TECNICATURA UNIVERSITARIA EN INFORMATICA
Pruebas Orientadas a Objeto
Arquitectura CLARO-TECNOTREE
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
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
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
Ingeniería del Software
Diagramas de clases Modelan la vista estática del sistema
Principios y Patrones de Diseño
El patrón de diseño Proxy Raúl Heras Alberto Blasco José Manuel Arévalo.
Introducción a la programación Orientada a objetos
Tema 10: Interfaces Antonio J. Sierra.
Diseño de Sistemas. Patrones de Diseño. Geronimo Manso.
Modelado Arquitectónico
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
Ingeniería de Software
Arquitectura de una aplicación
ANDRES FELIPE BORRERO SALAZAR COD ALEXANDRA CARREÑO SALAS COD LUCIO ANIBAL CRIOLLO COD ALEJANDRO RUIZ IDROBO COD
Introducción a la POO • ¿Qué es la programación orientada a objets (POO)? – Un “paradigma” de programación – Una forma de pensar acerca de los problemas.
DISEÑO DE SOFTWARE 1ª. Parte
Bases de Datos Orientadas a Objetos (BDOO)
Programación orientada a objetos
Unidad 4 Diseño Arquitectónico Basado en la Funcionalidad
Presentado por Alfredo de la Mora Díaz Catedrático Dr. Jesús Favela
Patrones de diseño DECORATOR Mario Rodríguez Martín
Patrones de Diseño: Command
Programación Orientada Objetos
Luis Pereda Calvo1 Comportamiento de Objetos Estrategia (Strategy) *Política (Policy)
Asignatura: Base de datos para aplicaciones Integrantes:
Redes de Computadores Departamento de Computación Universidad de Alcalá TEMA 1 INTRODUCCIÓN A LA COMUNICACIÓN DE DATOS.
PATRON PROTOTYPE Cristina Merino Héctor Carbajo Alicia Arroyo.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
PATRÓN ADAPTER (Adaptador) Elena Moreno Ramírez Laura Sánchez Romero Aroa Solana Ruiz.
Importancia en la efectividad del:
Programación Orientada a Objeto
PROGRAMACION ORIENTADA A OBJETOS
Ingeniería de Software
Introducción. ¿Que es una computadora? Maquina electrónica capaz de resolver problemas ejecutando las instrucciones de un programa: 1.recibe datos, 2.los.
Programación orientada a objetos
Diseño de Sistemas.
Ingeniería de Requisitos
Sistemas de eventos discretos.
Patrones de diseño equipo n.1
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.
M.C. Pedro Bello López 1 IMPLEMENTACIÓN. M.C. Pedro Bello López2.
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
Tema 1 – Introducción a las Redes informáticas
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,
*INTERFACES*. DEFINICION Cuando uno usa una herramienta, o accede e interactúa con un sistema, suele haber “algo” entre uno mismo y el objeto de la interacción.
Organización y Métodos. ©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva * Ingeniería de Requerimientos ● Estableciendo.
Programación Orientada a Objetos: CLASES Y OBJETOS
Arquitectura de una aplicación Arquitectur a: desarrolla un plan general del sistema, asegurando que las necesidades de los usuarios sean atendidas. Ingeniería.
La Programación Orientado a Objetos
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
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.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Herencia.
APLICACIONES II ° Patrones De Diseño ° Esteban Omar Mora Delgado
Transcripción de la presentación:

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

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

Estructura 6 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

Estructura 7 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

Estructura 9 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

Estructura 11 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

Estructura 13 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

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 Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados

Patrones relacionados Adapter, Singleton y Flyweight. 18 Posgrado Ciencia e Ingeniería de la computación – Tecnología Orientado a Objetos Introducción. Problema. Aplicabilidad. Estructura. Consecuencias. Fuerzas. Variantes. Patrones Relacionados