Decorator
Última actualización
¿Te fue útil?
Última actualización
¿Te fue útil?
Según el libro "Patrones de Diseño" el patrón Decorator "asigna responsabilidades adicionales a un objeto dinámicamente, proporcionando una alternativa flexible a la herencia para extender la funcionalidad".
Wrapper (Envoltorio)
Componente:
define la interfaz para variables a las que se puede añadir responsabilidades dinámicamente.
ComponenteConcreto:
define una variable a la que se pueden añadir responsabilidades adicionales.
Decorador:
mantiene una referencia a una variable Componente y define una interfaz que se ajusta a la interfaz del Componente.
DecoradorConcreto:
añade responsabilidades al componente.
No se observan impedimentos y/o modificaciones de la estructura original del patrón para su implementación en Go.
En este ejemplo queremos agregarle dinámicamente ingredientes adicionales a un café que por defecto viene simple.
Implementación:
Se puede probar la implementación del patrón de la siguiente forma:
|
Atención: Esta publicación se encuentra abandonada. Puede acceder a la versión vigente en