KBD

Keith Devens .com

Friday, March 12, 2010 Flag waving
Got truth decay? Brush up on your Bible! – a billboard in New Brunswick, NJ
← I hate ASP.NETUnited Airlines dragon ad →

Daily link icon Monday, February 13, 2006

C++ Reference Guide > The Rise & Fall of Object Orientation

C++ Reference Guide > The Rise & Fall of Object Orientation:

Exceptional C++ Style, by Herb Sutter, contains a systematic analysis of class std::string. Sutter shows that the majority of its member functions can actually be replaced with existing STL algorithms, at least in theory. He also provides plenty of reasons why this approach is better. The four mini-chapters dedicated to this issue are indispensable for anyone who is interested in learning how general purpose libraries should be designed today. It's surprising to see that the original notions of OOP such as inheritance, virtual functions and member functions have become so antiquated and cumbersome in the last 10 years. Undoubtedly, were class std::string to be re-designed from scratch today, it would offer a cleaner, slimmer and more consistent interface

Via Top Ten of Programming Advice to NOT follow, by Kristian Dupont Knudsen, which is somewhat worth a read in its own right. (That link via Keith Gaughan.) I didn't agree with all of it, but I did like this bit:

Oh, and my favourite specialization of the comments advice: keep a history of changes and author info etc. in the top of each file.
I've never actually heard anyone say that you should do this but I have seen it so many times that there must be people out there recommending it. Why on earth you would clutter the code with information that so obviously belongs in the version control system is just beyond me.

← I hate ASP.NETUnited Airlines dragon ad →

Comments XML gif

Adam Vandenberg (http://adamv.com/) wrote:

C style static typing was never condusive to "real" OO anyway.

∴ Adam Vandenberg | 13-Feb-2006 9:31pm est | http://adamv.com/ | #9131

Feel free to post a comment below. Please see my comment policy.

Formatting Rules (No HTML):

  • **bold**, *italic*, _underlined_, --strikeout--
  • "text"="url" creates a link, and URLs are auto-highlighted
  • Blockquote: Like e-mail, begin paragraph with > (greater-than sign)
  • Lists: begin paragraph with *,-, or + (unordered), or # (ordered)
  • Code block: ?!code:language=perl|php|sql|javascript|etc.{\n}...{\n}?!/code

:
(will be your IP address if blank)
: (optional)
(Will not be shown on site)

: (optional)
:

March 2010
SunMonTueWedThuFriSat
 123456
78910111213
14151617181920
21222324252627
28293031 



RSS feed RSS feed for Keith's Weblog
Atom feed Atom feed for Keith's Weblog
Weblog archive

Generated in about 0.442s.

(Used 8 db queries)