A volte ho sentito che avere troppe classi "manager" nella progettazione del tuo programma è odore di codice e aggiunge un inutile livello di complessità. Per me ha senso che le persone vogliano usare le classi manager per manipolare e controllare gli oggetti da un contesto che ha senso per loro, ma capire come far funzionare una soluzione senza di loro può essere fonte di confusione.
Bisogna davvero evitare il più possibile le classi manageriali? Inoltre, quali articoli / documenti dovrei leggere su come implementare una soluzione alternativa per casi generali / comuni in cui questi manager possono essere rimossi?