Classificare i nomi: singolare o plurale? [chiuso]

52

È sempre difficile per me scegliere tra forme singolari e plurali per i nomi delle classi:

CustomerRepository vs. CustomersRepository
CustomerService vs. CustomersService
CustomerController vs. CustomersController

E per i nomi composti è ancora più difficile:

OrderCustomerRepository vs. OrderCustomersRepository vs. OrdersCustomersRepository

Quale approccio preferisci e perché?

    
posta SiberianGuy 25.08.2011 - 23:35
fonte

4 risposte

67

L'unica cosa che pluralizzo sono le collezioni.

foreach (var customer in customers)
{
    // do something with customer
}

Tutti i tuoi esempi sono oggetti individuali, quindi non sono pluralizzati. Sì, i nomi si riferiscono ad oggetti che possono avere più istanze, ma tutto ciò che devi sapere nel nome è l'entità oggetto (cioè il cliente).

Quindi, in tutti i tuoi esempi, il singolare è la forma corretta Rende la vita molto più semplice.

    
risposta data 25.08.2011 - 23:41
fonte
56

Usa singolare. Lo strumento per girare le viti è chiamato "cacciavite" e non "cacciavite".

Tuttavia, pluralizzi di conseguenza il metodo e i nomi delle proprietà per indicare se verrà restituito un valore o una raccolta.

    
risposta data 28.08.2011 - 13:32
fonte
5

Sicuramente singolare. Non si crea un oggetto di People , si crea una collezione di oggetti Person . L'unica volta che userei i plurali sarebbe per le classi statiche, cioè SupportServices , StringUtils , ecc. Tuttavia, in questo caso, la classe agisce più come un namespace che altro.

    
risposta data 26.08.2011 - 06:18
fonte
0

Ricorda, una classe è un modello per un oggetto. Quindi pensa all'oggetto a cui ti stai riferendo.

Spesso è un'entità singolare, specialmente quando è un'entità ORM. A volte potrebbe essere una raccolta.

Credo che la risposta sia specifica per il contesto.

    
risposta data 26.08.2011 - 07:18
fonte

Leggi altre domande sui tag