Eva Lleonart Martín Asunción García-Menacho Rovira

Slides:



Advertisements
Presentaciones similares
Metodologías para el desarrollo de aplicaciones Web.
Advertisements

Algoritmos y Programas
David Díez, Camino Fernández, Juan Manuel Dodero
Curso de java básico (scjp)
Metodologías ágiles.
FACHADA COMPOSITOR MEMENTO
Clases de Redacción I I Unidad Gabriela A. Herrera Z.
POO Santiago, Mayo 2004 TRABAJO DE INVESTIGACIÓN POO Programación Orientada a Objetos CENAFOM Carolina Bravo V. Jaime Jofré B.
Tipo de Dato Abstracto Tipos de datos:
La manera más simple para describir un patrón es que ofrece una solución probada a un problema común.
METODOLOGIA INTEGRACIÓN CURRICULAR Y TIC: UNA PROPUESTA PARA EL MEJORAMIENTO DE LA CALIDAD DE LA EDUCACIÓN.
UNIVERSIDAD LATINA (UNILA) INTRODUCCION A LA PROGRAMACIÓN
Análisis y Diseño O.O. Click to add notes Preguntas del diseño :
CAPITULO 2 La Representación del Conocimiento
Patrones de diseño OO Gang of Four (GoF)
Principios y Patrones de Diseño
El paradigma de la orientación a objetos La programación orientada a objetos genera códigos eficientes y estandariza la metodología de programación, además.
Ingeniería de Software Orientada a Objetos
DEPARTAMENTO DE INGENIERÍA INFORMÁTICA
El Proceso Software Ingeniería en Informática
Proceso investigativo
Criterios de la Orientación a Objetos 1. Método y Lenguaje (proceso de pensamiento y notaciones para analizar y producir software). 2. Implementación y.
Modelado Arquitectónico
DEPARTAMENTO DE INGENIERÍA INFORMÁTICA
DEPARTAMENTO DE INGENIERÍA INFORMÁTICA
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
Ingeniería de Software


DISEÑO DE SOFTWARE 1ª. Parte
Fundamentos de programación
Reestructuración del Código M.C. Juan Carlos Olivares Rojas Marzo 2010.
Tema I Arquitectura de Software. Arquitectura de software es un conjunto de reglas que definen la estructura de un sistema y las relaciones entre sus.
UNIVERSIDAD NACIONAL DEL NORDESTE Teoría del Diseño II (Metodología)
Lenguajes de Programación Tema 3
5.3 APROXIMACIONES AL DISEÑO
Mesa Redonda GXOpen. GXOpen Objetivo y Esencia Lo que tenemos para lograrlo Objetivo y Esencia Lo que tenemos para lograrlo.
Comunicación y Multimedia
UNIVERSIDAD AUTÓNOMA SAN FRANCISCO
INVESTIGACION DE OPERACIONES
3.- Introducción a Patrones de Diseño
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.
INGENIERIA DE SOFTWARE GUILLERMO OCHOA GAVIRIA Octubre 2006 Factory Method.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Diseño: Fundamento y Documentación ISF5501 Ingeniería de Software Semana 13/2.
Vista de interacción  Una vista de interacción muestra el flujo de control requerido que se establece entre los objetos.
Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad.
Introducción al Proceso de Desarrollo de Software
Desarrollo de Software Orientado a Objetos (deficiencias)
DEFINICIÓN DE OBJETO Un objeto es aquello que puede ser observado, estudiado y aprendido CARACTERÍSTICAS nos permiten conocerlos mediante la observación,
Programación Orientada a Objeto
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
ANÁLISIS Y DISEÑO DE SISTEMAS II
Introducción a UML Departamento de Informática Universidad de Rancagua
Conceptos Fundamentales
Facultad de Ingeniería y Tecnologías Memoria de Grado Geolocalización de documentos en el marco GIS.
Barbara Mercedes Parada Urieta Estudiante
Patrones de diseño Grupo 1 Haeberli, Julián Lara, Guisell
MODELAMIENTO VISUAL Y UML
Universidad del Valle de Puebla
Metodología de la programación
Universidad de Carabobo Facultad Ciencias de la Educación Escuela de Educación Departamento de Matemática Trabajo Colaborativo Wikipedia Integrantes:
Métodos de investigación en la psicología clínica
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
Cómo escribir un informe de investigación
Introducción a la abstracción de datos MC Beatriz Beltrán Martínez Primavera 2015.
Modelado Orientado a Objetos Programación Orientada a Objetos Departamento de Sistemas Universidad del Cauca 2006.
Modelado UML Diagrama de Clases
:: Prof. Yeniffer Peña Introducción a JAVA Presentación Programación I.
Prof. Jonathan Silva Ingeniería Civil – Informática I Ingeniería Civil Informática I Clase 3 – Diseño de Programas.
Transcripción de la presentación:

Eva Lleonart Martín Asunción García-Menacho Rovira PATRONES Eva Lleonart Martín Asunción García-Menacho Rovira Laboratorio de Sistemas de Información Facultad de Informática Universidad Politécnica de Valencia 29/01/03

Contenido Introducción ¿Qué es un patrón? Desarrollo histórico Tipos de patrones Patrones de diseño (Gamma) Ejemplo (patrón intermediario) Descripción de patrón 29/01/03

Introducción Es un tema importante en el desarrollo de software actual: permite capturar la experiencia El uso de patrones para el desarrollo de software establece la diferencia entre un buen y un mal diseño orientado a objetos 29/01/03

¿Qué es un patrón? Solución probada que se puede aplicar con éxito en un determinado tipo de problemas que aparecen repetidamente en el desarrollo del sistema software No son librerías Se describen fundamentalmente en forma textual, acompañada de diagrama y de pseudo-código 29/01/03

¿Qué es un patrón? Algunas definiciones “Un patrón es un pedazo de información con nombre, instructivo y significante, que captura la esencia de una familia exitosa y completa de soluciones a un problema recurrente en un contexto dado” Brad Appleton “Cada patrón es una regla de tres partes, la cual expresa una relación entre un contexto dado, un conjunto de fuerzas que ocurren repetitivamente en ese contexto y cierta configuración de software que permite a esas fuerzas resolverse por si mismas” Richard Gabriel 29/01/03

¿Qué es un patrón? “Estos patrones en nuestras mentes son, más o menos, imágenes mentales de los patrones en el mundo: son representaciones abstractas de las reglas morfológicas que definen los patrones en el mundo. Sin embargo, son realmente diferentes. Los patrones en el mundo solo existen. Pero esos mismos patrones en nuestras mentes son dinámicos. tienen fuerza. Son generativos. Nos dicen qué hacer, cómo se pueden generar y, en ciertas circunstancias, que los debemos crear. Cada patrón es una regla que describe que debemos hacer para generar la entidad que los define” Christopher Alexander , The Timeless Way of Building, 1.979 29/01/03

Desarrollo histórico 1964 - 1979: Christopher Alexander escribe varios libros acerca del planeamiento urbano y la construcción de edificios En particular, “A Pattern Language: Towns, Buildings, Construction”, en 1977 1987. Ward Cunningham y Kent Beck aplican las ideas de Christopher para desarrollar un pequeño lenguaje de patrones, para aprender Smalltalk: “Using Pattern Languages for Object-Oriented Programs” 29/01/03

Desarrollo histórico de 1990 a 1992 se inicia el trabajo entre los miembros del “Gang of Four” (GoF) 1991. Se publica el libro de Jim Coplien “Advanced C++ Programming Styles and Idioms”, basado en la recopilación de la experiencia del autor por varios años 1993 se publica el libro “Design Patterns, Elements of Reusable Object-Oriented Software” 29/01/03

Tipos de patrones De arquitectura De Diseño De Análisis De procesos y organizacionales De negocios Idioms Para ambientes distribuidos 29/01/03

Patrones de diseño Características Son soluciones concretas Son soluciones técnicas Se aplican en situaciones muy comunes Son soluciones simples Facilitan la reutilización de las clases y del propio diseño 29/01/03

Clasificación de Gamma   Creación Estructural De Conducta Clase Método de Fabricación Adaptador (clases) Interprete Plantilla Objeto Fábrica Adaptador (objetos) Cadena de Responsabilidad Constructor Puente Comando Prototipo Composición Iterador Singleton Decorador Intermediario Fachada Observador Flyweight Estado Apoderado Estrategia Visitante Memoria 29/01/03

Ejemplo de patrón de diseño Estructura del patrón intermediario siguiendo la notación OMT 29/01/03

Ejemplo de patrón de diseño 29/01/03

Descripción de un patrón Nombre: corto y descriptivo Problema: Descripción del problema que refuerza la intención del patrón Contexto: precondiciones necesarias para que el problema y su solución existan Fuerzas: son las variables importantes del problema, que determinan qué tan buena o mala es una solución 29/01/03

Descripción de un patrón Solución: relaciones estáticas y reglas de funcionamiento que describen cómo llegar al resultado Ejemplos Contexto resultante: El estado o configuración del sistema después de aplicar el patrón 29/01/03

Descripción de un patrón Racionalidad: Una explicación justificada de los pasos o reglas en el patrón y del patrón como un todo, de la forma en la cual resuelve las fuerzas en el problema acorde con sus metas, principios y filosofía Relaciones: Las relaciones estáticas y dinámicas de este patrón con otros. Usos Conocidos 29/01/03