Mi sono imbattuto in questo articolo: link
Dopo averlo letto, ho un po 'di difficoltà nel comprendere un concetto. Se osservi la sezione Struttura in quell'articolo quando mostra il diagramma di classe UML, sono confuso sul motivo per cui la classe Wrapper di opzioni estende la Interfaccia ma la classe Wrapper di opzioni ha un'istanza (composizione) dell'interfaccia pure. Perché sono necessarie entrambe queste relazioni per realizzare ciò che il Pattern Decorator spera di fare? In altre parole, perché nessuna delle due relazioni è sufficientemente buona per se stessa?