Ho tirato denominazione il termine puffo da qui (numero 21). Per salvare chiunque non abbia familiarità con il problema, la denominazione di Puffo è l'atto di prefissare un gruppo di classi, variabili, ecc. Correlate con un prefisso comune in modo da finire con "a SmurfAccountViewpassa a SmurfAccountDTOa SmurfAccountController", ecc.
La soluzione che ho sentito in generale è creare uno spazio dei nomi puffo e rilasciare i prefissi puffi. Questo mi ha generalmente servito bene, ma sto incontrando due problemi.
Sto lavorando con una biblioteca con una
Configurationclasse. Potrebbe essere stato chiamatoWartmongerConfigurationma è nello spazio dei nomi Wartmonger, quindi è appena chiamatoConfiguration. Allo stesso modo ho unaConfigurationclasse che potrebbe essere chiamataSmurfConfiguration, ma è nello spazio dei nomi Puffo, quindi sarebbe ridondante. Ci sono punti nel mio codice in cuiSmurf.Configurationappare a fiancoWartmonger.Configuratione digitare nomi completi è goffo e rende il codice meno leggibile. Sarebbe più bello avere a che fare con unSmurfConfiguratione (se fosse il mio codice e non una libreria)WartmongerConfiguration.Ho una classe chiamata
Servicenel mio spazio dei nomi Puffo che avrebbe potuto essere chiamataSmurfService.Serviceè una facciata sulla cima di una complessa libreria di Puffi che esegue lavori di Puffo.SmurfServicesembra un nome migliore perchéServicesenza il prefisso Puffo è così incredibilmente generico. Posso ammettere cheSmurfServiceera già un nome generico, inutile e togliere puffo lo rendeva semplicemente più evidente. Ma avrebbe potuto essere chiamatoRunner,Launcherecc. E mi starebbe ancora "meglio"SmurfLauncherperché non so cosaLauncherfa, ma so cosaSmurfLauncherfa. Si potrebbe sostenere che ciò cheSmurf.Launcherfa dovrebbe essere altrettanto evidente di aSmurf.SmurfLauncher, ma ho potuto vedere `Puffo.Launcher essendo una sorta di classe relativa alla configurazione piuttosto che una classe che lancia puffi.
Se c'è un modo aperto e chiuso per affrontare uno di questi sarebbe fantastico. In caso contrario, quali sono alcune pratiche comuni per mitigare il loro fastidio?
SmurfJobs, o tecnicamente li esegue per essere coerenti con il linguaggio della documentazione di Puffo. Alla luce di questo e l'altro risponde, ho intenzione di rinominare SmurfServicea SmurfJobRunner. Sembra che il numero 1 non abbia una migliore risoluzione agnostica della lingua come mi aspettavo. Riesco a vedere casi in cui andare SmurfConfigurationsarebbe la chiamata giusta, ma nel mio caso penso che Configurationsia meglio anche con il fastidio di Wartmonger.Configuration.
Smurf.Configuratione SmurfConfigurationsentirsi diversi? Sicuramente non è il carattere extra, vero? (Accorciare Configse la lunghezza è il problema.) Ha Smurf.Configurationqualche problema che SmurfConfigurationnon lo fa?
Smurf.Launcherpuffi di lancio, o lo fa lanciareSmurfJobs? Forse potrebbe essere chiamatoSmurf.JobLauncher?