2013-03-19 18 views
5

Jest to podstawowe pytanie o konwencję nazewnictwa, ale nie znalazłem nigdzie, co by się do tego konkretnie odnosiło.Konwencja nazewnictwa dla metody serwisowej

Mam klasę o nazwie Foo i klasę o nazwie Bar.

Mam metodę w usłudze pobierania wszystkich pasków dla Foo. Należy nazwać go:

GetFooBars(int fooId) 

lub

GetBarsForFoo(int fooId) 

Aby rozwinąć, można mieć Bary dla innych klas, np

GetMooBars(int mooId) 

lub

GetBarsForMoo(int mooId) 

Odpowiedz

5

Proponuję

GetBarsByFooId(int fooId) 

GetBarsByMooId(int mooId) 

Or ... szczypanie API do obsługi połączenia jak ten

[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

Dzięki, podoba mi się, że określono "... FooId". Moim jedynym zastrzeżeniem jest to, że kiedy widzę "Przez", zamiast "Dla", to sprawia, że ​​myślę, że otrzymuję wiele (wszystkich?) Słupków, które są podzielone przez, lub posortowane według FooId (lub MooId). Alternatywnie, gdy widzę "For", to sprawia, że ​​myślę, że otrzymuję podzbiór wszystkich taktów tylko dla konkretnego FooId (lub MooId). –

+0

Kiedy widzę nazwę typu 'GetBarsByFooId', to powoduje, że myślę" filtruj według "lub" wyszukaj według ". Nigdy nie przyszło mi do głowy, że może to oznaczać "grupa przez" lub "zamówienie przez". Ale to tylko ja ... Myślę, że to, że podajesz "fooId" jako parametr, powinno wyjaśnić intencje. –

2

ja raczej użyj o f:

GetBarsByFoo(int fooID) { } 

GetBarsByMoo(int mooID) { } 

GetBarsByFooId(int fooID){ } 

GetBarsByMooId(int mooID){ } 
+0

'GetBarsByMooId' jest powtórzone. Myślę, że masz na myśli 'GetBarsByMoo'. –

+0

Masz absolutną rację, dzięki za komentarz. :) – Abbas

Powiązane problemy