Lenguajes y Modelos de
Programación
Introducción a los patrones de
diseño
Jesús Andrés Hincapié Londoño
Presentación del curso
Los objetivos de este curso son
• Explicar los principios de la Programación Orientada a
Objetos.
•...
¿Qué es un patrón?
“Cada patrón describe un problema que ocurre infinidad
de veces en nuestro entorno, así como la solució...
¿Qué es un patrón de diseño software?
Soluciones
probadas
Buenas prácticas
Diseño de
software
en en
Un patrón de diseño de...
El cambio en el software
La única cosa que siempre va a estar presente en el
desarrollo de software es
El Cambio
Para admi...
Catálogos de patrones
Existen varios catálogos que recopilan patrones que se
usan en diferentes etapas del desarrollo de s...
Catálogos de patrones de diseño
Entre los catálogos de patrones de diseño, el más
reconocido es el catálogo de patrones GO...
Patrones GOF
El catálogo GOF está dividido en tres categorías
Creación
Herencia
Composición
Factory Method Adapter Interpr...
En resumen
Referencias
• Software Quality Attributes. http://www.advoss.com/software-quality-
attributes.html
• GOF Patterns. http://...
Upcoming SlideShare
Loading in …5
×

Introducción a los patrones de diseño

839 views

Published on

  • Be the first to comment

Introducción a los patrones de diseño

  1. 1. Lenguajes y Modelos de Programación Introducción a los patrones de diseño Jesús Andrés Hincapié Londoño
  2. 2. Presentación del curso Los objetivos de este curso son • Explicar los principios de la Programación Orientada a Objetos. • Identificar los elementos de un patrón de diseño. • Reconocer la necesidad de buenas soluciones. • Analizar problemas de diseño. • Construir soluciones que implementen patrones.
  3. 3. ¿Qué es un patrón? “Cada patrón describe un problema que ocurre infinidad de veces en nuestro entorno, así como la solución al mismo, de tal modo que podemos utilizar esta solución un millón de veces más adelante sin tener que volver a pensarla otra vez.” Christopher Alexander - 1979 Imagen publicada en http://www.flickr.com/photos/eekim/5686194142/ Por eekim
  4. 4. ¿Qué es un patrón de diseño software? Soluciones probadas Buenas prácticas Diseño de software en en Un patrón de diseño de software describe un problema recurrente que surge en contextos específicos de software, y presenta un esquema genérico probado para la solución de éste.
  5. 5. El cambio en el software La única cosa que siempre va a estar presente en el desarrollo de software es El Cambio Para administrar el cambio en el software, se requieren sistemas • Flexibles • Reutilizables • Extensibles Atributos de calidad
  6. 6. Catálogos de patrones Existen varios catálogos que recopilan patrones que se usan en diferentes etapas del desarrollo de software. En este sentido, se pueden encontrar: • Patrones de análisis • Patrones de diseño e implementación • Patrones de pruebas • Patrones arquitectónicos
  7. 7. Catálogos de patrones de diseño Entre los catálogos de patrones de diseño, el más reconocido es el catálogo de patrones GOF (Gang of Four), el cual fue publicado en el libro Design Patterns en 1995 y es el principal referente en el tema de patrones. Integrantes • Ralph Johnson • Erich Gamma • Richard Helm • John Vlissides Imagen publicada en http://takeji-soft.seesaa.net/article/34433484.html Por autor desconocido
  8. 8. Patrones GOF El catálogo GOF está dividido en tres categorías Creación Herencia Composición Factory Method Adapter Interpreter Template Method Abstract Factory Builder Prototype Singleton Adapter Bridge Composite Decorator Facade Flyweight Proxy Chain of Responsibility Command Iterator Mediator Memento Observer State Strategy Visitor Estructural Comportamiento Propósito Ámbito
  9. 9. En resumen
  10. 10. Referencias • Software Quality Attributes. http://www.advoss.com/software-quality- attributes.html • GOF Patterns. http://www.gofpatterns.com/ • Biografía de Christopher Alexander. http://en.wikipedia.org/wiki/Christopher_Alexander • GAMMA, Erich; HELM, Richard; JOHNSON, Ralph; VLISSIDES, John (1995). Design Patterns: Elements of Reusable Object-Oriented Software. Reading, Massachusetts: Editorial Addison Wesley Longman, Inc.

×