Voglio aggiungere alcuni metodi aggiuntivi strettamente correlati a Book senza estendere Book. Così ho trovato lo schema del decoratore.
La maggior parte degli esempi che ho visto sono ad es. estendere una classe decoratrice astratta che implementa un'interfaccia ecc.
Mi chiedo se questo potrebbe essere considerato come modello decoratore?
class Book { ... }
class MyBookDecorator {
constructor ( Book book ) {
this->book = book
}
extraMethod() {
...
}
}
myBook = new MyBookDecorator( book );
myBook->extraMethod();
In caso contrario, questo è un modello valido da usare?
Grazie in anticipo!