Parlando in generale, sembra che la tua classe abbia assunto troppe responsabilità. È impossibile dire esattamente come senza conoscere i dettagli, ma il fatto che tu sia preoccupato della sua crescita è un odore / tell / canary-in-the-coalmine. È probabile che tu abbia semplicemente bisogno di una nuova classe.
Ricorda che "helper" sono problematici . Se ci pensi a lungo e duramente, probabilmente c'è un sostantivo con verbi correlati che funziona / con la tua classe originale. C'è probabilmente una cosa che può reggersi da sola. In caso contrario, potrebbe risultare che la tua classe originale è in realtà due o più classi. Se non è così, beh, allora non hai avuto la possibilità di pensarci abbastanza. Non esiste qualcosa che faccia una sola cosa, ma richiede molti, molti, molti metodi per farlo. Non può essere solo una cosa.
Anticipare le domande sull'ovvio HtmlHelper Dirò questo: avrebbe potuto chiamarsi meglio. Certo, i suoi metodi di estensione riguardano solo il rendering HTML, ma è davvero il miglior nome? Inoltre, probabilmente fa più del dovuto. C'è davvero una grande "cosa" che conosce il routing, il rendering di HTML, le modalità di convalida sul lato client, il CSS di convalida della convalida, ecc ...? Mmmmm ... suppongo che ci sia più di una persona nella squadra di MVC che non è pazza di nome e responsabilità. A volte, le soluzioni migliori non sono ovvie finché non abbiamo vissuto per un po 'con l'alternativa.
Ti ho parlato della volta che ho incontrato Rod Stewart? Potrebbe essere stato uno dei migliori giorni della mia vita. Invece, sono andato direttamente a casa e ho venduto tutto il suo vinile. Puzzava di salviette per neonati, bourbon e pipì di gatto. Non potevo capire una parola che ha detto. Ha spinto da me (il vincitore del premio radio) in modo che potesse colpire la mia ragazza. Non ne siamo sicuri, ma sembrava che continuasse a chiamarla "burro d'arachidi" mentre si mordeva la camicetta. Siamo partiti presto.
Il mio punto è che solo perché guardi qualcuno non significa che non colpire la tua ragazza occasionalmente commettere errori.
(Non fare l'equivalente di HtmlHelper
.)
Relativo a SO: È la parola "Helper" in un nome di classe un odore di codice?