Ho avuto la stessa domanda, e dopo aver letto tutte le risposte qui rimango sicuramente con SINGULAR, ragioni:
Motivo 1 (concetto). Puoi pensare a un sacchetto contenente mele come "AppleBag", non importa se contiene 0, 1 o un milione di mele, è sempre lo stesso sacchetto. Le tabelle sono solo questo, i contenitori, il nome della tabella deve descrivere ciò che contiene, non quanti dati contiene. Inoltre, il concetto plurale riguarda più una lingua parlata (in realtà per determinare se ne esiste una o più).
Motivo 2 . (Convenienza). è più facile venire fuori con nomi singolari, piuttosto che con nomi plurali. Gli oggetti possono avere plurali irregolari o non essere affatto plurali, ma ne avranno sempre uno singolare (con poche eccezioni come Notizie).
- Cliente
- Ordine
- Utente
- Stato
- notizia
Motivo 3 . (Estetica e Ordine). Soprattutto negli scenari di dettaglio principale, questo si legge meglio, si allinea meglio per nome e ha un ordine più logico (Master prima, Dettaglio secondi):
Rispetto a:
Motivo 4 (Semplicità). Metti tutti insieme, nomi di tabella, chiavi primarie, relazioni, classi di entità ... è meglio essere consapevoli di un solo nome (singolare) invece di due (classe singolare, tabella plurale, campo singolare, dettaglio principale singolare-plurale .. .)
Customer
Customer.CustomerID
CustomerAddress
public Class Customer {...}
SELECT FROM Customer WHERE CustomerID = 100
Una volta che sai di avere a che fare con "Cliente", puoi essere sicuro di usare la stessa parola per tutte le esigenze di interazione del database.
Motivo 5 . (Globalizzazione). Il mondo sta diventando più piccolo, potresti avere un team di diverse nazionalità, non tutti hanno l'inglese come lingua madre. Sarebbe più facile per un programmatore di madrelingua inglese pensare a "Repository" piuttosto che a "Repository", o "Status" anziché "Status". Avere nomi singolari può portare a un minor numero di errori causati da errori di battitura, risparmiare tempo non dovendo pensare "è Child o Children?", Migliorando quindi la produttività.
Motivo 6 . (Perchè no?). Può anche farti risparmiare tempo in scrittura, risparmiare spazio su disco e persino prolungare la durata della tastiera del tuo computer!
SELECT Customer.CustomerName FROM Customer WHERE Customer.CustomerID = 100
SELECT Customers.CustomerName FROM Customers WHERE Customers.CustomerID = 100
Hai salvato 3 lettere, 3 byte, 3 ulteriori hit da tastiera :)
E infine, puoi nominare quelli che si incasinano con nomi riservati come:
- Utente> LoginUser, AppUser, SystemUser, CMSUerer, ...
Oppure usa le famigerate parentesi quadre [Utente]