There are quite some languages that have different forms for the nominative, accussative, dative and genetive case. Lets take Latin and the concept of an unpaid developer (servus).
Servus is nominative singular. Lets make it plural: servi.
Select from servi...
oh wait, we have a from so we need an ablative plural here. So we get: select from servis...
What about updating? Then we need a plural accusative form: update servos...
But are we updating the whole collection or just a single record? Then we should probably talk about servum.
Et cetera ad infinitum.This might be a little overstretched.. Why don't we just use the normal form (the style guide talks about natural) of a noun? Good question, that is the singular nominative form. So, why make a special case for plural and ignore al other grammatical concerns?
Yes, that's not something we'd do with Latin declensions in a language designed by English speakers, but that isn't really an argument against naming collections with plural nouns in such a language, just because doing what might be natural in a language designed by Latin speakers to resemble Latin doesn't make sense to us.
FrequentCustomerArray
rather than FrequentCustomers
? If not, why is that different? map(foo, FrequentCustomers)
and using a member foo(FrequentCustomer[0])
Perl has plural / singular inflection :-) map foo($_), @FrequentCustomer;
foo($FrequentCustomer[0]);Object oriented design principles do not effectively translate to relational design
Which is better?
foreach (var employee in staff) {
}
or
foreach (var employee in employees) {
}
If you're walking on to a new project, these subtleties make all the difference in understanding what's going on without having to rely on documentation.
I basically end up with a "people" table which holds a very small amount of common data and is used in a lot of relationships.
Honestly, the distinctions require a great deal of documentation to fully understand. However, making the data less normalized and a little harder to comprehend also protects new people from making honest mistakes which could lead to legal issues.
Really ? IMHO this is a bad practice : it makes the code les readable and breaks the auto-completion ...