patrones de diseño

brindan una solución ya probada y documentada a problemas de desarrollo de software
se dividen en:

Creacionales

fabrica abstracta

crear diferentes familias de objetos

Método fabricacion

Parte del principio de que las subclases determinan la clase a implementar.

prototipo

clonación de ejemplares copiándolos de un prototipo

Singleton

Restringe la instanciación de una clase o valor de un tipo a un solo objeto.

Model View Controler

la capa model, que representa la realidad,la capa controler , que conoce los métodos y atributos,la capa vista, que muestra un aspecto del modelo.

Subtema

Estructurales

Adaptador

Convierte una interfaz en otra.

Puente

Desacopla una abstracción de su implementación permitiendo modificarlas independientemente.

Objeto Compuesto

Utilizado para construir objetos complejos a partir de otros más simples, utilizando para ello la composición recursiva

Envoltorio

Permite añadir dinámicamente funcionalidad a una clase existente, evitando heredar sucesivas clases para incorporar la nueva funcionalidad.

Fachada

Permite simplificar la interfaz para un subsistema

Peso Ligero

Elimina la redundancia

Apoderado

Un objeto se aproxima a otro

Comportamentales

Cadena de responsabilidad

La base es permitir que más de un objeto tenga la posibilidad de atender una petición.

Orden

Encapsula una petición como un objeto dando la posibilidad de “deshacer” la petición.

Intérprete

Intérprete de lenguaje para una gramática simple y sencilla.

Iterador

Define una interfaz que declara los métodos necesarios para acceder secuencialmente a una colección de objetos sin exponer su estructura interna

Mediador

Coordina las relaciones entre sus asociados. Permite la interacción de varios objetos, sin generar acoples fuertes en esas relaciones.

Recuerdo

Almacena el estado de un objeto y lo restaura posteriormente.

Observador

Notificaciones de cambios de estado de un objeto.

Estado

Se utiliza cuando el comportamiento de un objeto cambia dependiendo del estado del mismo.

Estrategia

Utilizado para manejar la selección de un algoritmo.

Método plantilla

Algoritmo con varios pasos suministrados por una clase derivada

Visitante

Operaciones aplicadas a elementos de una estructura de objetos heterogénea.