SlideShare una empresa de Scribd logo
1 de 2
PATRONES DE DISEÑO
1.- ¿Qué es un Patrón de Diseño?
Son un conjunto de prácticas de óptimo diseño para la búsqueda de soluciones a problemas
comunes en el desarrollo de software y referentes al diseño de interacción o interfaces, es decir
resulta ser una solución a problemas de diseño, entre otras palabras describe las clases y objetos
que se comunican entre sí, para resolver un problema de diseño general o en particular.
2.- ¿Por qué son útiles los Patrones de Diseño?
Porque facilitan el aprendizaje de la solución a dichos problemas a los nuevos diseñadores.
Estandarizan el modo en que se realiza el diseño.
Porque se puede evitar a dar solución a un problema ya conocido y solucionado anteriormente.
Proporcionan catálogos de elementos reusables en el diseño de sistemas software.
3.- ¿Qué tipos de patrones de diseño existen? Explícalos
Patrones de Creación: Se utilizan cuando se deben de crear objetos pero debe de tomarse
decisiones dinámicamente en el proceso de creación. Para ésto lo que se hace es abstraer el
proceso de creación de los objetos para realizar la decisión de qué objetos crear o cómo crearlos
para el momento en que se tenga que hacer. Patrones de creación son: Abstract
Factory, Builder, Factory Method, Object Pool, Prototype y Singleton.
Patrones Estructurales: Describen como utilizar estructuras de datos complejas a partir de
elementos más simples. Sirven para crear las interconexiones entre los distintos objetos y que
estas relaciones no se vean afectadas por cambios en los requisitos del programa. Algunos
ejemplos de Patrones Estructurales son: Adapter, Bridge, Decorator, Facade, Flyweight y Proxy.
Patrones de Comportamiento: Especifican el comportamiento entre objetos del programa, por
ejemplo: Chain of Responsability, Command, Interpreter, Iterator, Mediator, Snapshot, Observer,
State, Strategy, Template Method y Visitor.
4.- ¿Qué problemática es la que intentan solucionar los patrones de diseño?
Resolver los problemas ya conocidos y solucionados con anteriodidad.
Disminuir la capacidad de comprensión de un diseño o de implementación de código
Comunicación sencilla con los demás objetos.
Disminuir el rendimiento de la velocidad de ejecución de una tarea en el proyecto

Más contenido relacionado

La actualidad más candente (7)

1 El Paradigma De OrientacióN A Objetos
1  El Paradigma De OrientacióN A Objetos1  El Paradigma De OrientacióN A Objetos
1 El Paradigma De OrientacióN A Objetos
 
La interacción
La interacciónLa interacción
La interacción
 
El Rol de un Arquitecto de Software
El Rol de un Arquitecto de SoftwareEl Rol de un Arquitecto de Software
El Rol de un Arquitecto de Software
 
Juan velasquez
Juan velasquezJuan velasquez
Juan velasquez
 
Interaccion Web
Interaccion WebInteraccion Web
Interaccion Web
 
Ingenieria inversa
Ingenieria inversaIngenieria inversa
Ingenieria inversa
 
Ingenieria inversa
Ingenieria inversaIngenieria inversa
Ingenieria inversa
 

Similar a Patrones de diseño

1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño
landeta_p
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
kaolong
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
kaolong
 
Patrones de diseño - Andrés Dorado
Patrones de diseño - Andrés DoradoPatrones de diseño - Andrés Dorado
Patrones de diseño - Andrés Dorado
2008PA2Info3
 
Fundamentos para el diseño de un software
Fundamentos para el diseño de un softwareFundamentos para el diseño de un software
Fundamentos para el diseño de un software
ssalzar
 

Similar a Patrones de diseño (20)

12.diseño basado en patrones
12.diseño basado en patrones12.diseño basado en patrones
12.diseño basado en patrones
 
12-150203140754-conversion-gate02.pptx
12-150203140754-conversion-gate02.pptx12-150203140754-conversion-gate02.pptx
12-150203140754-conversion-gate02.pptx
 
1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño
 
8.conceptos de diseño
8.conceptos de diseño8.conceptos de diseño
8.conceptos de diseño
 
chuy
chuy chuy
chuy
 
Diseno Software
Diseno SoftwareDiseno Software
Diseno Software
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
 
Fundamentos
FundamentosFundamentos
Fundamentos
 
2.4 DISEÑO BASADO EN PATRONES.pptx
2.4 DISEÑO BASADO EN PATRONES.pptx2.4 DISEÑO BASADO EN PATRONES.pptx
2.4 DISEÑO BASADO EN PATRONES.pptx
 
Clase ii patrones de diseño
Clase ii patrones de diseñoClase ii patrones de diseño
Clase ii patrones de diseño
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
Diseño basado en patrones
Diseño basado en patronesDiseño basado en patrones
Diseño basado en patrones
 
Patrones de Diseño en e-learning
Patrones de Diseño en e-learningPatrones de Diseño en e-learning
Patrones de Diseño en e-learning
 
Patrones de diseño - Andrés Dorado
Patrones de diseño - Andrés DoradoPatrones de diseño - Andrés Dorado
Patrones de diseño - Andrés Dorado
 
Fundamentos para el diseño de un software
Fundamentos para el diseño de un softwareFundamentos para el diseño de un software
Fundamentos para el diseño de un software
 
Patrones de-diseño-mañana
Patrones de-diseño-mañanaPatrones de-diseño-mañana
Patrones de-diseño-mañana
 
Introducción Patrones de Diseño
Introducción Patrones de DiseñoIntroducción Patrones de Diseño
Introducción Patrones de Diseño
 
Fundamentos de Diseño Orientado a Objetos
Fundamentos de Diseño Orientado a ObjetosFundamentos de Diseño Orientado a Objetos
Fundamentos de Diseño Orientado a Objetos
 
Sem 001 - Clase 01 - Ingenieria del Software.ppt
Sem 001 - Clase 01 - Ingenieria del Software.pptSem 001 - Clase 01 - Ingenieria del Software.ppt
Sem 001 - Clase 01 - Ingenieria del Software.ppt
 

Patrones de diseño

  • 1. PATRONES DE DISEÑO 1.- ¿Qué es un Patrón de Diseño? Son un conjunto de prácticas de óptimo diseño para la búsqueda de soluciones a problemas comunes en el desarrollo de software y referentes al diseño de interacción o interfaces, es decir resulta ser una solución a problemas de diseño, entre otras palabras describe las clases y objetos que se comunican entre sí, para resolver un problema de diseño general o en particular. 2.- ¿Por qué son útiles los Patrones de Diseño? Porque facilitan el aprendizaje de la solución a dichos problemas a los nuevos diseñadores. Estandarizan el modo en que se realiza el diseño. Porque se puede evitar a dar solución a un problema ya conocido y solucionado anteriormente. Proporcionan catálogos de elementos reusables en el diseño de sistemas software. 3.- ¿Qué tipos de patrones de diseño existen? Explícalos Patrones de Creación: Se utilizan cuando se deben de crear objetos pero debe de tomarse decisiones dinámicamente en el proceso de creación. Para ésto lo que se hace es abstraer el proceso de creación de los objetos para realizar la decisión de qué objetos crear o cómo crearlos para el momento en que se tenga que hacer. Patrones de creación son: Abstract Factory, Builder, Factory Method, Object Pool, Prototype y Singleton. Patrones Estructurales: Describen como utilizar estructuras de datos complejas a partir de elementos más simples. Sirven para crear las interconexiones entre los distintos objetos y que estas relaciones no se vean afectadas por cambios en los requisitos del programa. Algunos ejemplos de Patrones Estructurales son: Adapter, Bridge, Decorator, Facade, Flyweight y Proxy.
  • 2. Patrones de Comportamiento: Especifican el comportamiento entre objetos del programa, por ejemplo: Chain of Responsability, Command, Interpreter, Iterator, Mediator, Snapshot, Observer, State, Strategy, Template Method y Visitor. 4.- ¿Qué problemática es la que intentan solucionar los patrones de diseño? Resolver los problemas ya conocidos y solucionados con anteriodidad. Disminuir la capacidad de comprensión de un diseño o de implementación de código Comunicación sencilla con los demás objetos. Disminuir el rendimiento de la velocidad de ejecución de una tarea en el proyecto