Patrones De Diseño

Páginas: 21 (5132 palabras) Publicado: 19 de noviembre de 2012
01/04/2011

Patrones de diseño

MBA Pilar Stronguiló Leturia

Agenda
• Patrones de diseño GoF
• Patrones Creacionales
• Patrones Estructurales
• Patrones de comportamiento
• ¿Cómo seleccionar un patrón?

1

01/04/2011

Patrones de diseño GOF

Patrones de diseño
• 1987: Ward Cunningham y Kent Beck  de 
Smalltalk escriben "Using Pattern Languages for Object‐Oriented Programs" 
• 1990 – 1994: Erich Gamma,
Richard Helm, Ralph Johnson y John 
Vlissides se unieron para publicar el libro 
"Design Patterns: Elements of Reusable 
Object‐Oriented Software" o libro 
GoF(Gang Of Four)

2

01/04/2011

Patrones GoF
• Los patrones de diseño GoF (Gang of Four) 
son considerados como los fundamentales.
• Estos patrones están categorizados en tres grupos: Creacionales, Estructurales y de 
Comportamiento. 

Patrones GoF
Patrón

Propósito

Creacionales

Resolver problemas relativos a la 
creación de objetos.

Estructurales

Resolver problemas relativos a la 
composición de objetos.

De 
Resolver problemas relativos a la 
comportamiento interacción entre objetos.

3

01/04/2011

Patrones GOF
Creacionales

Patrones GoF CreacionalesCategoría
Abstract factory 
(Fábrica abstracta)
Builder
(Constructor virtual)
Factory method
(Método de fabricación)
Prototype
(Prototipo)
Singleton
(Instancia única

Descripción
Crea una instancia de varias familias 
de clases.
Separa la construcción de un objeto 
de su representación.
Crea una instancia de varias clases 
derivadas.
Describe una instancia inicializada completamente que puede ser 
copiada o clonada.
Describe una clase con una única 
instancia.

4

01/04/2011

PATRÓN: ABSTRACT FACTORY

Patrón: Abstract Factory
• Contexto:
– Debemos crear diferentes objetos, 
pertenecientes a diferentes familias. 

5

01/04/2011

Patrón: Abstract Factory
• El patrón fábrica abstracta permite trabajar con objetos de distintas familias, proporcionando una 
interfaz.
• Se logra que las familias, de objetos relacionados 
o dependientes, no se mezclen entre sí, haciendo 
transparente el tipo de familia concreta que se 
está usando.

Patrón: Abstract Factory
• Este patrón está aconsejado cuando se prevé la 
inclusión de nuevas familias de productos, pero 
puede resultar contraproducente cuando se 
añaden nuevos productos o cambian los existentes, puesto que afectaría a todas las 
familias creadas. 

6

01/04/2011

Patrón: Abstract Factory

Patrón: Abstract Factory
Participantes
• AbstractFactory (FábricaContinente)
– Declara una interfaz para operaciones que crean objetos 
abstractos. 

• ConcreteFactory (FábricaAfrica, FábricaAmérica)
– Implementa las operaciones para crear objetos concretos. 

•AbstractProduct (Hervíboro, Carnívoro)
– Declara una interfaz para un tipo de objeto. 

• Product (León, Lobo)
– Define un objeto que será creado por la correspondiente fábrica 
concreta. 
– Implementa la interfaz de AbstractProduct.

• Client (MundoAnimal)
– Usa las interfaces declaradas por las clases AbstractFactory y 
AbstractProduct.

7

01/04/2011

Patrón: Abstract Factory
•Por ejemplo: 
– Las librerías para crear interfaces gráficas 
suelen utilizar este patrón y cada familia sería 
un sistema operativo distinto. 
– Así pues, el usuario declara un Botón, pero de 
forma más interna lo que está creando es un 
BotónWindows o un BotónMac, por ejemplo.

Patrón: Abstract Factory

8

01/04/2011

PATRÓN: BUILDER

Patrón: Builder
• Contexto: 
–Se requiere la creación de una variedad de 
objetos complejos (con muchas partes) en un 
conjunto de pasos.

9

01/04/2011

Patrón: Builder
• El patrón Constructor, abstrae el proceso de 
creación de un objeto complejo, 
centralizándolo en un único punto.
• Separa dicha creación de su representación 
de manera que el mismo proceso de 
construcción cree diferentes 
representaciones....
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Patrones De Diseño
  • Patrones de Diseño
  • patrones de diseño
  • Patrones De Diseño
  • patron de diseño
  • Patrones de Diseño
  • Patrones de Diseño
  • Patrones De Diseño

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS