Servant is used for providing some behavior to a group of classes. Instead of defining that behavior in each class - or when we cannot factor out this behavior in the common parent class - it is defined once in the Servant.
Dai un'occhiata a MoveServant
e Movable
esempio nella pagina wiki. Quale può essere la ragione per cui non voglio mettere moveBy
e moveTo
nella classe genitore per tutte le forme? In altre parole, perché la classe genitore che implementa la funzionalità è peggiore rispetto al servitore che implementa la funzionalità.
BTW in questa frase "Servant è usato per fornire un comportamento a un gruppo di classi." group of classes
significa classi che appartengono allo stesso tipo (gerarchia di classi)?