3.- Introducci - PowerPoint PPT Presentation

About This Presentation
Title:

3.- Introducci

Description:

Title: Introducci n a la Fase de Concepci n Author: JHS Last modified by: jnhidalg Created Date: 4/8/2001 6:57:43 PM Document presentation format – PowerPoint PPT presentation

Number of Views:44
Avg rating:3.0/5.0
Slides: 14
Provided by: jhs45
Category:

less

Transcript and Presenter's Notes

Title: 3.- Introducci


1
3.- Introducción a Patrones de Diseño Justo N.
Hidalgo Sanz DEPARTAMENTO DE INGENIERÍA
INFORMÁTICA
2
Índice
  • Qué es un patrón de diseño
  • Tipos de patrones
  • Creacionales
  • Estructurales
  • De Comportamiento

3
Introducción
  • Las estructuras pueden ser diferentes, pero
    resolver un mismo problema
  • Christopher Alexander un patrón es una solución
    a un problema en un contexto.
  • Describe un tipo de problema que ocurre
    recurrentemente, para después describir una
    solución genérica para que pueda utilizarse en
    cualquier instancia de ese problema.

4
The Gang of Four
  • El libro Design Patterns. Elements of Reusable
    Object-Oriented Software de Gamma, Helm, Johnson
    and Vlissides ha sido el de mayor influencia en
    el mundo de los patrones.
  • Aplicó la idea de Patrones al Software,
  • Describió una estructura de catalogación,
  • Catalogó 23 patrones,
  • Postuló estrategias orientadas a objetos de
    utilización de estos patrones.
  • No es el único
  • POSA (Pattern-Oriented Software Architecture),
    vol. 1 y 2.
  • UML y Patrones. C. Larman
  • ...

5
Uso
  • Para qué sirven los patrones
  • Reutilización de soluciones
  • Establecimiento de una terminología común
  • Al principio es una locura!
  • Ayuda al trabajo en equipo
  • Perspectiva a alto nivel de los problemas y de
    sus soluciones
  • No nos metemos en detalles demasiado pronto
  • Establecimiento de metodología común
  • Diseño a partir de interfaces
  • Dar más importancia a la composición sobre la
    herencia
  • Favorecer la encapsulación de comportamientos

6
Tipos de Patrones (I)
Patterns are Everywhere!
7
Tipos de Patrones (y II)
  • GoF los divide en tres tipos
  • Creacionales (creational)
  • Patrones que se refieren al proceso de creación
    de objetos
  • Estructurales (structural)
  • Patrones que tratan con la composición de clases
    u objetos
  • De Comportamiento (behavioural)
  • Caracterización de las maneras en que las
    clases/objetos interactúan entre sí y se
    distribuyen las responsabilidades.

8
Estructura de los Patrones (I)
Design Patterns Name Jurisdiction
Characterization Intent Also Known
As Motivation Applicability Structure Particip
ants Collaborations Consequences Implementation
Sample Code Known Uses Related Patterns
9
Estructura de los Patrones (II)
  • Nombre del patrón
  • Clasificación
  • Intención párrafo que responde a
  • qué hace el patrón de diseño?
  • cuál es su intención?
  • qué tema o problema de diseño trata?
  • Alias (also known as)
  • Otros nombres para el patrón, si existen.
  • Motivación
  • Un escenario que ilustre el problema y cómo el
    patrón lo resuelve.

10
Estructura de los Patrones (III)
  • Aplicabilidad
  • Situaciones donde el patrón es aplicable
  • Forma de reconocer estas situaciones
  • Estructura
  • Representación gráfica de las clases que forman
    el patrón. Generalmente en UML.
  • Participantes
  • Clases, objetos, y sus responsabilidades
  • Colaboraciones
  • Cómo colaboran los participantes

11
Estructura de los Patrones (y IV)
  • Consecuencias
  • Cómo cumple el patrón sus objetivos
  • Qué aspecto de la estructura del sistema se puede
    variar independientemente
  • Qué posibles problemas o compromisos tiene el
    patrón
  • Implementación
  • Trucos, problemas, técnicas, a utilizar cuando
    se implementa el patrón
  • Código de ejemplo
  • Usos conocidos
  • Ejemplos en sistemas reales.
  • Patrones relacionados

12
Estructura del curso
  • Estudiaremos algunos de los patrones del GOF
  • Introducción teórica
  • Diseño de la solución
  • Ejemplos prácticos diseño e implementación (Java
    / C)
  • Otros serán de estudio independiente.
  • Se espera el mismo nivel de maestría que con los
    explicados en clase.
  • Ejemplo aglutinador.
  • La descripción del problema se encontrará en la
    web una semana antes obligatorio haberlo leído
    antes de llegar a clase.

13
Bibliografía
  • Design Patterns. Elements of reusable
    object-oriented software. Gamma et al. Ed.
    Addison-Wesley
  • The Unified Software Development Process. I.
    Jacobson, G. Booch, J. Rumbaugh. Ed.
    Addison-Wesley. ISBN 0-201-57169-2
  • CSCE966 Software Architectures Frameworks -
    Department of Computer Science Engineering -
    Universidad de Nebraska
  • Curso de Netobjectives.com
Write a Comment
User Comments (0)
About PowerShow.com