2013-03-19 8 views
5

Questa è una domanda di convenzione di denominazione di base, ma non ho trovato da nessuna parte che trattasse in modo specifico.Convenzione di denominazione per il metodo di servizio

Ho una classe chiamata Foo e una classe chiamata Bar.

Ho un metodo in un servizio per recuperare tutte le barre per un Foo. Dovrei chiamarla:

GetFooBars(int fooId) 

o

GetBarsForFoo(int fooId) 

ad espandersi, si potrebbe avere Sbarre per altre classi, per esempio

GetMooBars(int mooId) 

o

GetBarsForMoo(int mooId) 

risposta

5

Vorrei suggerire

GetBarsByFooId(int fooId) 

GetBarsByMooId(int mooId) 

O ... tweaking vostra API per supportare una chiamata del genere

[DataContract] 
[KnownType(typeof(GetBarsByFooIdRequest))] 
[KnownType(typeof(GetBarsByMooIdRequest))] 
abstract class GetBarsRequest 
{ 
    .. 
} 

[DataContract] 
sealed class GetBarsByFooIdRequest : GetBarsRequest 
{ 
    [DataMember] 
    public int FooID { get; set; } 
} 

sealed class GetBarsByMooIdRequest : GetBarsRequest 
{ 
    [DataMember] 
    public int MooID { get; set; } 
} 

GetBarsResponse GetBars(GetBarsRequest); 
+0

Grazie, mi piace che hai specificato "... FooId". Il mio unico avvertimento è che quando vedo "By", piuttosto che "For", mi viene da pensare che sto ricevendo molte (tutte?) Barre che sono state scomposte o ordinate da FooId (o MooId). In alternativa, quando vedo "Per", mi viene da pensare che sto ottenendo un sottoinsieme di tutte le barre solo per un particolare FooId (o MooId). –

+0

Quando vedo un nome come "GetBarsByFooId", mi viene da pensare "filtro per" o "ricerca per". Non avevo mai pensato che potesse significare "raggruppa per" o "ordina per". Ma sono solo io ... Immagino che il fatto che tu stia passando 'fooId' come parametro dovrebbe chiarire l'intento. –

2

mi piacerebbe piuttosto usare uno o f il seguente:

GetBarsByFoo(int fooID) { } 

GetBarsByMoo(int mooID) { } 

GetBarsByFooId(int fooID){ } 

GetBarsByMooId(int mooID){ } 
+0

'GetBarsByMooId' viene ripetuto. Penso che tu intenda "GetBarsByMoo". –

+0

Hai perfettamente ragione, grazie per il commento. :) – Abbas