2

Páginas: 33 (8110 palabras) Publicado: 9 de abril de 2015
Patrones de diseño orientado a objetos
Programación Orientada a Objetos
Facultad de Informática

Juan Pavón Mestras
Dep. Ingeniería del Software e Inteligencia Artificial
Universidad Complutense Madrid

Hacer software no es fácil

Diseñar software orientado a objetos es difícil, y diseñar
software orientado a objetos reutilizable es todavía más
difícil
Chapter 1: Introduction. Design Patterns,The Gang of Four

...y un software capaz de evolucionar tiene que
ser reutilizable (al menos para las versiones
futuras)

Juan Pavón Mestras
Facultad de Informática UCM, 2004

Patrones de creación

2

Diseñar para el cambio
„
„
„

El software cambia
Para anticiparse a los cambios en los requisitos hay que
diseñar pensando en qué aspectos pueden cambiar
Los patrones de diseño están orientados alcambio

Juan Pavón Mestras
Facultad de Informática UCM, 2004

Patrones de creación

3

Patrones
Cómo llegar a ser un maestro de ajedrez
„

Primero aprender las reglas del juego
„

„

A continuación aprender los principios
„

„

relativo valor de las piezas, valor estratégico de las casillas
centrales, jaque cruzado, etc.

Sin embargo, para llegar a ser un maestro, hay que estudiar las
partidas deotros maestros
„

„

nombres de las piezas, movimientos legales, geometría y orientación
del tablero, etc.

Estas partidas contienen patrones que deben ser entendidos,
memorizados y aplicados repetidamente

Hay cientos de estos patrones

Juan Pavón Mestras
Facultad de Informática UCM, 2004

Patrones de creación

4

Patrones
Cómo llegar a ser un maestro del software
„

Primero aprender las reglas
„„

A continuación aprender los principios
„

„

programación estructurada, programación modular, programación
OO, programación genérica, etc.

Sin embargo, para llegar a ser un maestro, hay que estudiar los
diseños de otros maestros
„

„

algoritmos, estructuras de datos, lenguajes de programación, etc.

Estos diseños contienen patrones que deben ser entendidos,
memorizados y aplicadosrepetidamente

Hay cientos de estos patrones

Juan Pavón Mestras
Facultad de Informática UCM, 2004

Patrones de creación

5

Patrones
„

Christopher Alexander (1977):
Cada patrón describe un problema que ocurre una y otra vez en nuestro
entorno, y describe la esencia de la solución a ese problema, de tal modo que
pueda utilizarse esta solución un millón de veces más, sin siquiera hacerlo de
la misma manerados veces

„

Un patrón es:
„
„
„
„

„

una solución a un problema en un contexto particular
recurrente (lo que hace la solución relevante a otras situaciones)
enseña (permite entender cómo adaptarlo a la variante particular del
problema donde se quiere aplicar)
tiene un nombre para referirse al patrón

Los patrones facilitan la reutilización de diseños y arquitecturas
software que han tenido éxitoJuan Pavón Mestras
Facultad de Informática UCM, 2004

Patrones de creación

6

Motivación de los Patrones
„
„

Capturan la experiencia y la hacen accesible a los no
expertos
El conjunto de sus nombres forma un vocabulario que
ayuda a que los desarrolladores se comuniquen mejor
„

„

„

Lenguajes de patrones

Ayudan a la gente a comprender un sistema más
rápidamente cuando está documentado conlos patrones
que usa
Los patrones pueden ser la base de un manual de
ingeniería de software
Si el software se convierte en una ingeniería, las prácticas
exitosas deben ser documentadas sistemáticamente y
ampliamente difundidas

Juan Pavón Mestras
Facultad de Informática UCM, 2004

Patrones de creación

7

Motivación de los Patrones
„
„

Facilitan la reestructuración de un sistema tanto si fue o
noconcebido con patrones en mente
Reutilización:
„

„

„

Los patrones de diseño soportan la reutilización de
arquitecturas software
Los armazones soportan la reutilización del diseño y del
código

El software cambia
„

„

Para anticiparse a los cambios en los requisitos hay que
diseñar pensando en qué aspectos pueden cambiar
Los patrones de diseño están orientados al cambio

Juan Pavón Mestras...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • 2 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS