Está en la página 1de 3

Prototype

Crear clonaciones de objetos (instancias de clases).


Proposito
Especifica los tipos de objetos a crear por medio de una instancia prototica y crea nuevos objetos copiando dicho
prototipo.
Aplicaciones
Cuando las clases a instanciar sean especificadas en tiempos de ejecución.

BUILDER
tipo creación enfocado en ámbito de los objetos , objetivo es instanciar objetos complejos que generalmente están
compuestos por varios elementos
OBJETIVOS:
• Abstraer el proceso de creación de un objeto complejo, centralizando dicho proceso en un único punto, de tal forma
que el mismo proceso de construcción pueda crear representaciones diferentes. • Separar la construcción de un objeto
complejo de su representación, de modo que el mismo proceso de construcción pueda crear representaciones
diferentes. • Reutilizar algoritmos para crear diferentes representaciones.

POSITIVAS:
• Reduce el acoplamiento. • Permite variar la representación interna del objeto, respetando la clase builder. Es decir,
conseguimos independizar la construcción de la representación. • Aisla el código de construcción y representación. •
Proporciona un control mas fino sobre el proceso de construcción
NEGATIVAS:
• Introduce complejidad en los programas
Flyweight
Busca eliminar o reducir la redundancia cuando tenemos gran cantidad de objetos que contienen información idéntica

Uso e importancia
Su uso esta relacionando con los siguientes puntos: o Para eliminar o reducir la redundancia cuando se tiene gran
cantidad de objetos que contienen la misma información. o Cuando la memoria es crítica para el rendimiento de la
aplicación. o La aplicación no depende de la identidad de los objetos.
ABSTRACT FACTORY
Este patrón de diseño permite crear familias de objetos relacionados las cuales serán un esquema o estructura para las
demás subclases que se deriven de ella, esto se asemeja a la estructura empleada en polimorfismo.
APLICABILIDAD
Úsese el patrón Abstract Factory cuándo: ● sistema debe ser independiente de cómo se crean, componen y representan
sus productos. ● sistema debe ser configurado con una familia de productos de entre varias. ● familia de objetos
producto relacionados está diseñada para ser usada conjuntamente, y es necesario hacer cumplir esta restricción. ●
quiere proporcionar una biblioteca de clases de productos, y sólo quiere relevar sus interfaces,no sus implementaciones.
BRIDGE
Tipo de patrón: Patrones Estructurales
Desacopla una abstracción de su implementación, de manera que ambas puedan variar de forma independiente.

¿Cuándo se usa e importancia?


• Se desea evitar un enlace permanente entre una abstracción y su implementación. Por ejemplo: cuando se debe
seleccionar o cambiar la implementación en tiempo de ejecución • Tanto las abstracciones como sus implementaciones
deberían ser extensibles mediante subclases. En este caso, el patrón Bridge permite combinar las diferentes
abstracciones y sus implementaciones, y extenderlas independientemente • Queremos que los cambios en la
implementación de una abstracción no afecten al cliente, es decir el código de Bridge no tendría que ser recompilado •
Se desee compartir una implementación entre varios objetos, y este hecho deba de permanecer oculto al cliente. •
Permite simplificar jerarquías demasiado pobladas
COMPOSITE
TIPO DE PATRÓN: CREACIÓN
Referencias explicitas al padre o Compartir componentes o Maximizar al interfaz de componentes o Declarar las
operaciones de gestión de los hijos
estructura de árbol para representar jerarquías de parte-todo permite que los clientes traten de manera uniforme a los
objetos individuales y a los objetos

• CUANDO SE USA E IMPORTANCIA


o Se busca representar una jerarquía de objetos como “parte-todo”. o Se busca que el cliente puede ignorar la diferencia
entre objetos primitivos y compuestos (para que pueda tratarlos de la misma manera)
(Cadena de Responsabilidad)
Propósito del Patrón.
Evita acoplar el emisor de una petición a su receptor, dando a más de un objeto la responsabilidad de responder a la
petición. ▪ En cadena los objetivos receptores y pasa la petición a través de la cadena hasta que es procesada por algún
objeto
Cuando se usa cadena de responsabilidad
Hay más de un objeto que pueden manejar una petición, y el manejador no se conoce a priori, sino que debería
determinarse automáticamente ▪ Se quiere enviar una petición a un objeto entre varios sin especificar explícitamente el
receptor. ▪ El conjunto de objetos que pueden tratar una petición debería ser especificado dinámicamente.
Diseño Strategy
Este patrón define un conjunto de algoritmos, encapsula cada uno de ellos y los hace intercambiables. Permite que el
algoritmo pueda variar independientemente de los clientes que lo utilicen.
Tipo de Patrón Patrón de Comportamiento

Ventajas
Facilidad en comprender los distintos comportamientos si su implementación está encapsulada en distintas clases, y no
entrelazada en un único método.  Permite de forma simple añadir nuevos comportamientos, y eliminar o modificar los
existentes.  En el caso en que existan varios objetos cuyo comportamiento sea prácticamente el mismo, esto se puede
reducir a una única clase que haga uso de distintas estrategias.  Reducir el uso de subclases y, por tanto, el
acoplamiento entre ellas.
Problemas
 Puede complicar la comunicación entre el contexto y las estrategias.  Crece el número de objetos
diseño Mediator
El patrón mediador define un objeto que encapsula cómo un conjunto de objetos interactúa. Este patrón de diseño está
considerado como un patrón de comportamiento debido al hecho de que puede alterar el comportamiento del
programa en ejecución

Usar el patrón Mediator cuando:


• Un conjunto grande de objetos se comunica de una forma bien definida, pero compleja. • Reutilizar un objeto se hace
difícil porque se relaciona con muchos objetos. • Las clases son difíciles de reutilizar porque su función básica esta
entrelazada con relaciones de dependencia.

También podría gustarte