Mike Schilling said:
True, but some of it is vital.
In this case, "Object" vs "object" is a silly thing, and the reasons for
the choice hardly matter. Likewise
i++;
vs.
++i;
is of no real importance, and if you find the former more comfortable
because you used to write PDP-11 assembly language, there's no harm done.
I agree, in most circumstances(some things, like prefixes on parameters have
to go, comfort or not, but most things are ok). As far as incrementing goes,
I find i++ to make considerably more sense, readability wise, over ++i(that
just doesn't immediatly look like an increment), thus I use i++. I can deal
with both, don't care which is used as long as its usage is correct.
Still, within a single codebase, both of these shoudl be standardized.
Having code that uses Object, object and System.Object is horridly messy.
But as long as it matches the rest of the codebase I could care less what
particular name you use.
But when all those around you are saying "use structs, not objects:
they're faster", and decades of baggage are saying "Use value types for
things with value semantics and reference types for things with reference
semantics. Premature optimization is a sin, and incorrect semantics in the
service of premature optimization is a mortal sin," well, be thankful for
the baggage.
Likewise, I said some is ok, some isn't. My point was that you can't just
keep baggage and expect everyone else to conform to it simply because you
don't feel like learning the platform(in response to "Why would you want
to?"). Forcing baggage strictly for purposes of laziness(like trying to
force some C++ or java idioms onto .NET simply because you think they are
the only way possible) is going to come back and cause trouble somewhere
down the line.