Saya memiliki pertanyaan yang sama, dan setelah membaca semua jawaban di sini saya pasti tetap dengan TUNGGAL, alasannya:
Alasan 1 (Konsep). Anda dapat memikirkan tas berisi apel seperti "AppleBag", tidak masalah jika berisi 0, 1 atau sejuta apel, itu selalu tas yang sama. Tabel hanya itu, wadah, nama tabel harus menggambarkan apa yang dikandungnya, bukan berapa banyak data yang dikandungnya. Selain itu, konsep jamak lebih banyak tentang bahasa lisan (sebenarnya untuk menentukan apakah ada satu atau lebih).
Alasan 2 . (Kenyamanan). lebih mudah keluar dengan nama tunggal, daripada dengan nama jamak. Objek dapat memiliki bentuk jamak tidak beraturan atau bukan jamak sama sekali, tetapi akan selalu memiliki bentuk tunggal (dengan sedikit pengecualian seperti News).
- Pelanggan
- Pesan
- Pengguna
- Status
- Berita
Alasan 3 . (Estetika dan Ketertiban). Khususnya dalam skenario master-detail, ini membaca lebih baik, menyelaraskan lebih baik dengan nama, dan memiliki urutan yang lebih logis (Master pertama, Detail kedua):
- 1.Pesan
- 2.Detail Pesanan
Dibandingkan dengan:
- 1.Detail Pesanan
- 2.Pesanan
Alasan 4 (Kesederhanaan). Gabungkan semuanya, Nama Tabel, Kunci Utama, Hubungan, Kelas Entitas... lebih baik mengetahui hanya satu nama (tunggal) daripada dua (kelas tunggal, tabel jamak, bidang tunggal, detail master tunggal-jamak.. .)
Customer
Customer.CustomerID
CustomerAddress
public Class Customer {...}
SELECT FROM Customer WHERE CustomerID = 100
Setelah Anda mengetahui bahwa Anda berurusan dengan "Pelanggan", Anda dapat yakin bahwa Anda akan menggunakan kata yang sama untuk semua kebutuhan interaksi basis data Anda.
Alasan 5 . (Globalisasi). Dunia semakin kecil, Anda mungkin memiliki tim dari kebangsaan yang berbeda, tidak semua orang memiliki bahasa Inggris sebagai bahasa ibu. Akan lebih mudah bagi programmer bahasa Inggris non-pribumi untuk memikirkan "Repositori" daripada "Repositori", atau "Status" daripada "Status". Memiliki nama tunggal dapat mengurangi kesalahan yang disebabkan oleh kesalahan ketik, menghemat waktu dengan tidak harus berpikir "itu Anak atau Anak?", sehingga meningkatkan produktivitas.
Alasan 6 . (Kenapa tidak?). Bahkan dapat menghemat waktu menulis Anda, menghemat ruang disk Anda, dan bahkan membuat keyboard komputer Anda bertahan lebih lama!
SELECT Customer.CustomerName FROM Customer WHERE Customer.CustomerID = 100
SELECT Customers.CustomerName FROM Customers WHERE Customers.CustomerID = 103
Anda telah menyimpan 3 huruf, 3 byte, 3 klik keyboard ekstra :)
Dan akhirnya, Anda dapat memberi nama yang mengacaukan dengan nama khusus seperti:
- Pengguna> LoginUser, AppUser, SystemUser, CMSUser,...
Atau gunakan tanda kurung siku yang terkenal [Pengguna]