Patrones de Diseño de Software
SOFTWARE
Ingeniería de Software II
1
Definición
Los patrones de
software son
soluciones reusables
de problemas
recurrentes.
2
Definición
Un patrón dediseño es una
descripción de clases y objetos
comunicándose entre sí, adaptado
para resolver un problema de
diseño general en un contexto
particular
» Gamma
3
Definición
Cada patróndescribe un problema que
ocurre una y otra vez en nuestro
entorno y describe también el núcleo
de la solución al problema, de forma
que pueda utilizarse un millón de veces
sin tener que hacer dos veceslo
mismo.
» Alexander
4
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
...y unsoftware capaz de evolucionar tiene
que ser reutilizable (al menos para las
versiones futuras)
5
Diseñar para el cambio
•El software cambia
•Para anticiparse a los cambios en los requisitoshay que diseñar pensando en qué aspectos
pueden cambiar
•Los patrones de diseño están orientados al
cambio
6
Cómo llegar a ser un maestro de ajedrez
•Primero aprender las reglas del juego•nombres de las piezas, movimientos legales, geometría y orientación
del tablero, etc.
•A continuación aprender los principios
•relativo valor de las piezas, valor estratégico de las casillascentrales,
jaque cruzado, etc.
•Sin embargo, para llegar a ser un maestro, hay que estudiar las
partidas de otros maestros
•Estas partidas contienen patrones que deben ser entendidos,memorizados y aplicados repetidamente
•Hay cientos de estos patrones
7
Cómo llegar a ser un maestro del software
•Primero aprender las reglas
•algoritmos, estructuras de datos, lenguajes deprogramación, etc.
•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...
Regístrate para leer el documento completo.