Hai bisogno di aiuto per scegliere un nome per un'interfaccia
Domanda
Sto eseguendo il refactoring di un numero di classi in un'applicazione per utilizzare le interfacce anziché le classi di base. Ecco le interfacce che ho creato finora:
- ICarryable implementato da tutti gli oggetti Item
- IActable implementato da tutti gli oggetti Actor
- IUseable implementato da alcune sottoclassi di oggetti
- IWieldable implementato da alcune sottoclassi di Item
Puoi vedere che le principali classi base sono ancora Item e Actor. Questi hanno un'interfaccia comune in quanto entrambi si trovano su una mappa, quindi hanno una proprietà Location. La mappa non dovrebbe importare se l'oggetto è un attore o un oggetto, quindi voglio creare un'interfaccia per esso. Ecco come sarebbe l'interfaccia
public interface IUnnameable {
event EventHandler<LocationChangedEventArgs> LocationChanged;
Location Location { get; set; }
}
Non è un problema, ma non riesco a pensare a come chiamare questa interfaccia. Mi viene in mente IMappable che sembra un po 'zoppo. Qualche idea?
Soluzione
Sembra un ILocateable. Qualcosa di cui è possibile scoprire e tracciare la posizione.
Altri suggerimenti
- ILocatable
- IGeo
- IAmSomewhere
- IIsSomewhere
Modifica:
- INoun
Userei solo la notazione LOLCats .
ICanHasLocation
o forse
IHasLocation
o l'assurdo
ImInYourProgramHavingALocation
Oh, e comunque - ce n'è almeno uno Duck Typing libreria per C #, che è un concetto piuttosto interessante.
IWhereYouAtable - Boost mobile
ITwentyable - come in ciò che è il tuo 20 (abbreviazione di 10-20 - slang CB)
seriamente sebbene ILocateable sia buono.