Ho parecchie classi Helper nel mio progetto. Ho letto che questa è una brutta cosa, ma sospetto che "Helper" sia il suffisso sbagliato per loro. Darò un esempio.
Per prima cosa, ho una classe User
. Ho bisogno di un metodo GetSuggestedFriends()
per un utente. Voglio mantenere la logica per determinare l'elenco di amici suggeriti dalla classe User
, quindi non si gonfia. Al momento, ho un FriendshipHelper
che riceve un User
nel suo costruttore. Contiene la logica per ottenere amici suggeriti e ora posso chiamare myUser.FriendshipHelper.GetSuggestedFriends()
.
Originariamente FriendshipHelper
aveva solo metodi statici e un oggetto User
è stato passato in ognuno di essi. Se stavo scrivendo la lezione da zero ora, forse la chiamerei FriendshipManager
- fa anche cose come aggiungere e rimuovere gli amici.
Ho letto anche che le classi ...Manager
sono cattive, comunque. Come dovrei chiamare questa classe? O è questo "codice cattivo"? Dove dovrebbe essere la logica per ottenere amici suggeriti, amici attuali e aggiungere e rimuovere gli amici dal vivo? Sicuramente non tutti in una gigantesca classe User
?