Diseño de Sistemas. Patrones de Diseño. Geronimo Manso.

Slides:



Advertisements
Presentaciones similares
Daniel Mazzini Ubica Solutions
Advertisements

Curso de java básico (scjp)
FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE
FACHADA COMPOSITOR MEMENTO
Adapter, Bridge, Decorator.
Curso de Java Capitulo 7: Continuación Poo Profesor:
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
POLIMORFISMO UNIDAD 4.
Lenguaje de programación Java
Uso de patrones de arquitectura
Tomado de:
Arquitectura CLARO-TECNOTREE
Patrones de Diseño GEYFFER ALEXANDER ACOSTA CRISTHIAN DOUGLAS CASTRO
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
SISTEMAS DE LA INFORMACIÓN
Polimorfismo Lenguajes de Programación II Corporación Universitaria del Caribe CECAR.
Lic. Rosemary Torrico Bascopé
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.
Patrones de Comportamiento: Patrón de Diseño Observer
FACTORY METHOD Edmundo Álvarez Jiménez Antonio Fernández Alonso
ATON Presentación del diseño del juego de mesa Aton.
Patrones Creacionales
DISEÑO DE SOFTWARE 1ª. Parte
Bases de Datos Orientadas a Objetos (BDOO)
Lenguajes de Programación Tema 3
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
Juan Manuel Perdigón Mario Felipe Monsalve
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Simulación del patrón … (4)
INGENIERIA DE SOFTWARE GUILLERMO OCHOA GAVIRIA Octubre 2006 Factory Method.
Patrones de Diseño Carolina Perozo Julio Padrón Anthony Accardi.
Patrones de diseño Web Pierre Sergei Zuppa Azúa.
1 Diseño de Patrones Agustín J. González ELO329. Generalidades En Electrónica y en la vida en común usar soluciones probadas para problemas similares.
Módulo 7: Programación Orientada a Objetos en Visual Basic 2005.
PATRON PROTOTYPE Cristina Merino Héctor Carbajo Alicia Arroyo.
UNIDAD VI Recursos esenciales de Java LSC. Natalia Rodríguez Castellón.
SOFTWARE PARA PAGOS DE SUELDOS Patrones de Diseño
PATRONES DE DISEÑO.
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.
Diagrama de Clases ACI 570.
Interfaces ELO329: Diseño y Programación Orientados a Objetos.
Importancia en la efectividad del:
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.
Facultad de Ingeniería
Presentado por: PABLO ANDRES DIAZ SAIN HASSAM CAICEDO
TEMA 9: DIAGRAMA DE CLASE EN UML
Patrones de Diseño con ejercicios en Java
Detalles Generales sobre Java
Clasificación de Diagramas
Diseño de Sistemas.
Patrones de diseño equipo n.1
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
DIAGRAMA DE CLASES.
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Simulación del patrón … (5)
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.
Programación Orientada a Objetos: CLASES Y OBJETOS
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.
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
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.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
Arquitectura y Patrones de diseño.
Transcripción de la presentación:

Diseño de Sistemas. Patrones de Diseño. Geronimo Manso.

Temas a Tratar: Patrones de Diseño. Patrón Adaptado. Que es? Para que se utilizan. Tipos. Patrón Adaptado. Objetivo. Aplicabilidad. Como esta compuesto? Formas de Implementación. Ejemplo de aplicación. Geronimo Manso.

Siguiente tema: Patrones de Diseño. Patrón Adaptado. Que es? Para que se utilizan. Tipos. Patrón Adaptado. Objetivo. Aplicabilidad. Como esta compuesto? Formas de Implementación. Ejemplo de aplicación. Geronimo Manso.

y solucionar problemas que surgen durante el desarrollo de software. Patrones de Diseño ¿Qué es? Un patrón de diseño es un conjunto de reglas que describen como afrontar tareas y solucionar problemas que surgen durante el desarrollo de software. Geronimo Manso.

Patrones de Diseño Para qué se utilizan? Como ya se mencionó, se utilizan para solucionar problemas que surgen en el desarrollo de software, a partir de una serie de procedimientos que fueron definidos en base a la experiencia en casos similares. Geronimo Manso.

Patrones de Diseño Tipos Patrones de Creación. Patrones estructurales. Patrones de Comportamiento. Geronimo Manso.

Patrones de Diseño Patrones de creación Estos patrones crearán objetos para nosotros de manera que ya no los tendremos que instanciar directamente, proporcionando a nuestros programas una mayor flexibilidad para decidir que objetos usar. Ejemplos: Factory, Abstract Factory, Builder, Prototype y Singleton. Geronimo Manso.

Patrones de Diseño Patrones estructurales Nos permiten crear grupos de objetos para ayudarnos a realizar tareas complejas. También hay patrones estructurales que se encargan de las relaciones entre clases, mientras que otros se encargan de los objetos. Ejemplos: Adapter, Bridge, Composite, Decorator, FaÇade, Flyweight y Proxy. Geronimo Manso.

Patrones de Diseño Patrones de Comportamiento Nos permiten definir la comunicación entre los objetos de nuestro sistema y el flujo de la información entre los mismos. Ejemplos: Chain, Observer, Mediator, Template, Interpreter, Strategy, Visitor, State, Command e Iterator. Geronimo Manso.

Siguiente tema: Patrones de Diseño. Ejemplo de aplicación. Que es? Para que se utilizan. Tipos. Patrón Adaptado. Objetivo. Aplicabilidad. Como esta compuesto? Formas de Implementación. Ejemplo de aplicación. Geronimo Manso.

Patrón Adaptado. Objetivo. Una clase Adapter implementa un interfaz que conoce a sus clientes y proporciona acceso a una instancia de una clase que no conoce a sus clientes, es decir convierte la interfaz de una clase en una interfaz que el cliente espera. Geronimo Manso.

Patrón Adaptado. Aplicabilidad. Quieres utilizar una clase que llame a un método a través de una interface, pero quieres utilizarlo con una clase que no implementa ese interface. Modificar esa clase que implementa el interface NO es una opción por un par de razones: No tienes el código fuente de la clase. La clase es una clase de propósito general, y es inapropiado para ella implementar un interface para un propósito específico.

Patrón Adaptado. ¿Cómo esta compuesto? Geronimo Manso.

Patrón Adaptado. Formas de implementación. Mediante Herencia: Mediante Composición Se crea una nueva clase que heredará de la que queremos adaptar y a esta nueva clase le añadiremos los métodos necesarios para que su interfaz de programación se corresponda con la que queremos utilizar. Se incluye la clase original dentro de la nueva y crearemos los métodos de manera que accedan a la clase que hemos añadido como atributo.

Siguiente tema: Patrones de Diseño. Patrón Adaptado. Que es? Para que se utilizan. Tipos. Patrón Adaptado. Objetivo. Aplicabilidad. Como esta compuesto? Formas de Implementación. Ejemplo de aplicación. Geronimo Manso.

Ejemplo de aplicación. En el modelo que implementé una de las clases con la que contaba es la siguiente: public class Empleado{ protected Integer dni; protected String nombre; . . . public Usuario (Integer dni, String nombre) { } public Integer getDni () return dni; public String getNombre () return nombre;

Ejemplo de aplicación. Ahora supongamos que en nuestro grupo de trabajo, por cuestiones de comodidad cambiamos el criterio de cómo obtener los valores de los atributos y queremos que los metodos getDni() y getNombre(), pasen a ser obtenerDni() y obtenerNombre(). Una forma de aplicar el patrón adaptado seria la siguiente: public class EspEmpleado extends Empleado implements IFEspEmpleado { public EspEmpleado (Integer dni, String nombre) super (dni, nombre); } public Integer obtenerDni () return getDni(); public String obtenerNmbre () return getNombre(); Geronimo Manso.

Ejemplo de aplicación. De esta forma conseguimos lo siguiente: Además: Que los métodos: Puedan ser accedidos como: getDni(); getNombre(); obtenerDni(); obtenerNombre(); Además: El hecho de haberlo implementado así, aprovechamos las ventajas de la herencia, que hace que las otras clases que usen Empleado, sigan funcionando sin retocarlas. Geronimo Manso.

Diseño de sistemas. FIN Geronimo Manso.