Saltar al contenido principal
Abstract Document

Propósito

Usar propiedades dinámicas y conseguir la flexibilidad de los lenguajes no tipados manteniendo la seguridad de tipos.

Explicación

El uso del patrón Abstract Document permite gestionar propiedades no estáticas adicionales. Este patrón usa el concepto
de atributos para permitir seguridad de tipos y propiedades separadas de diferentes clases en un grupo de interfaces.


iluwatarAlrededor de 2 minStructuralExtensibility
Adapter

También conocido como

Wrapper

Propósito

Convertir la interfaz de una clase en otra que espera el cliente. El patrón Adapter permite a clases funcionar en conjunto con otras clases con las que no podrían de otra forma por problemas de compatibilidad.

Explicación


iluwatarAlrededor de 3 minStructuralGang of Four
Ambassador

Propósito

Proporcionar una instancia de servicio auxiliar a un cliente y delegar en ella las funcionalidades comunes de un recurso compartido.

Explicación

Ejemplo real

Un servicio remoto tiene muchos clientes accediendo a una función que este servicio proporciona. El servicio es una aplicación heredada y
es imposible actualizarla. Un gran número de solicitudes por parte de los usuarios están causando problemas de conectividad. Nuevas reglas
respecto a la frecuencia de solicitudes deberían implementarse junto con comprobaciones de latencia y registros del lado del cliente.


iluwatarAlrededor de 3 minStructuralDecouplingCloud distributed
Bridge

También conocido como

Handle/Body

Intención

Desacoplar una abstracción de su implementación para que ambas puedan variar de forma independiente.

Explicación

Real-world example

Imagina que tienes un arma con diferentes encantamientos, y se supone que debes permitir la mezcla de diferentes armas
con diferentes encantamientos. ¿Qué harías? ¿Crearías múltiples copias de cada una de las armas para cada uno de los
encantamientos o simplemente crearías un encantamiento separado y lo establecerías para el arma según sea necesario?
El
patrón Bridge te permite hacer lo segundo.


iluwatarAlrededor de 2 minStructuralGang of Four
Business Delegate

Propósito

El patrón Business Delegate añade una capa de abstracción entre los niveles de presentación y de negocio. Al utilizar
este patrón, conseguimos un acoplamiento flexible entre los niveles y encapsulamos el conocimiento sobre cómo localizar,
conectar e interactuar con los objetos de negocio que componen la aplicación.


iluwatarAlrededor de 3 minStructuralDecoupling
Composite

También conocido como

  • Object Tree
  • Composite Structure

Propósito

Componga objetos en estructuras de árbol para representar jerarquías parte-todo. Composite permite a los clientes tratar
objetos individuales y composiciones de objetos de manera uniforme.


iluwatarAlrededor de 3 minStructuralGang of FourObject compositionRecursion
Composite Entity

También conocido como

  • Coarse-Grained Entity

Propósito

El patrón de diseño Entidad Compuesta tiene como objetivo gestionar un conjunto de objetos persistentes
interrelacionados como si fueran una única entidad. Se utiliza comúnmente en el contexto de Enterprise JavaBeans (EJB) y
marcos empresariales similares para representar estructuras de datos basadas en gráficos dentro de modelos de negocio,
permitiendo a los clientes tratarlos como una sola unidad.


iluwatarAlrededor de 2 minStructuralClient-serverData accessEnterprise patterns
Composite View

Propósito

El objetivo principal del patrón de diseño Composite View es componer objetos en estructuras de árbol para representar
jerarquías parte-todo. Esto permite a los clientes tratar objetos individuales y composiciones de objetos de manera
uniforme, simplificando la gestión de estructuras complejas.


iluwatarAlrededor de 5 minStructuralEnterprise patternsPresentation
Curiously Recurring Template Pattern

Nombre / clasificación

Curiously Recurring Template Pattern

También conocido como

Recursive Type Bound, Recursive Generic

Propósito

Permitir que los componentes derivados hereden ciertas funcionalidades de un componente base que sean compatibles con el tipo derivado.


iluwatarAlrededor de 2 minStructuralExtensibilityInstantiation
Decorator

También conocido como

Wrapper

Propósito

Adjunte responsabilidades adicionales a un objeto de forma dinámica. Los decoradores proporcionan una alternativa
flexible a la subclase para ampliar la funcionalidad.

Explicación

Ejemplo real

En las colinas cercanas vive un trol furioso. Normalmente va con las manos desnudas, pero a veces lleva un arma. Para
armar al troll no es necesario crear un nuevo troll sino decorarlo dinámicamente con un arma adecuada.


iluwatarAlrededor de 2 minStructuralGang of FourExtensibility