domingo, 9 de octubre de 2011

Patterns

Creational Pattern o Patrón de creación

Abstract Factory: Nos da una interfaz para crear familias de objetos relacionados sin especificar su clase.
Ejemplo Abstract Factory C#

Builder: Permite construir un objeto complejo especificando sólo su tipo.
Ejemplo Builder C#

Factory Method: Define una interfaz para crear un objeto dejando a las subclases decidir el tipo al que pertenecen.
Ejemplo Factory Method C#

Prototype: Permite crear objetos personalizados sin conocer su clase exacta.
Ejemplo Prototype C#

Singleton: Garantiza que solamente se crea una instancia de la clase.
Ejemplo Singleton C#


Structural Pattern o Patrón Estructural.

Adapter: Se utiliza para convertir una interfaz en otra, de modo que una clase que no pudiera utilizar la primera, la use a través de la segunda.
Ejemplo Adapter C#

Bridge: Desacopla una abstracción de su implementación y les permite variar independientemente sin necesidad de alterar la otra.
Ejemplo Bridge C#

Composite: Sirve para construir objetos complejos a partir de otros más simples y similares entre sí.
Ejemplo Composite C#

Decorator: Responde a la necesitad de extender la funcionalidad de un objeto dinámicante.
Ejemplo Decorator C#

Facade: Provee de una interfaz unificada sencilla que hace de intermediaria entre un cliente y una interfaz o grupo de interfaces más complejas.
Ejemplo Facade C#

Flyweight: Elimina o reduce la redundancia cuando tenemos gran cantidad de objetos que contienen información idéntica.
Ejemplo Flyweight C#

Proxy: Se utiliza como intermediario para acceder a un objeto, permitiendo controlar el acceso a él.
Ejemplo Proxy C#

Behavioral Pattern o Patrón de Comportamiento.


Chain Of Responsibility: permite establecer una cadena de objetos receptores a través de los cuales se pasa una petición formulada por un objeto emisor. Cualquiera de los objetos receptores puede responder a la petición en función de un criterio establecido, evita el acoplamiento entre quien envía una petición y el receptor de la misma.
Ejemplo Chain Of Responsibility C#

Command: Permite solicitar una operación a un objeto sin conocer realmente el contenido de esta operación, ni el receptor real de la misma.
Ejemplo Command C#

Interpreter: Dado un lenguaje define una representación para su gramática y permite interpretar sus sentencias.
Ejemplo Interpreter C#

Iterator: Acceso secuencial a los elementos de una colección.
Ejemplo Iterator C#

Mediator: Permite la interacción entre varios objetos de forma simplificada.
Ejemplo Mediator C#

Memento: Permite almacenar el estado de un objeto para luego poder ser restaurado si fuera necesario.
Ejemplo Memento C#

Observer: Define una dependencia del tipo uno-a-muchos entre objetos, de manera que cuando uno de los objetos cambia su estado, el observador se encarga de notificar este cambio a todos los otros dependientes.
Ejemplo Observer C#

State: Modifica el comportamiento de un objeto cuando su estado interno cambia.
Ejemplo State C#

Strategy: Define una familia de algoritmos, encapsula cada uno y los hace intercambiables aun en tiempo de ejecución.
Ejemplo Strategy C#

Template Method: Define un esqueleto de algoritmo y delega la implementación a las subclases.
Ejemplo Template Method C#

Visitor: Representa una operación que será realizada sobre los elementos de una estructura de objetos, permitiendo definir nuevas operaciones sin cambiar las clases de los elementos sobre los que opera. es una forma de separar el algoritmo de la estructura de un objeto.
Ejemplo Visitor C#


 

No hay comentarios: