saturn comments on On the Fence? Major in CS - Less Wrong

18 Post author: talisman 07 May 2009 04:26AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (57)

You are viewing a single comment's thread. Show more comments above.

Comment author: saturn 07 May 2009 11:59:20PM *  1 point [-]

Object-orientated programming is the concept of designing code around simple, efficient, and reusable objects that can work together to accomplish a larger goal.

Removing the 'fluff' from this sentence, we get: "Object-orientated programming is designing code around objects," which looks awfully close to a tautology.

Comment author: MrHen 08 May 2009 12:39:16AM 0 points [-]

Mmm... well, the "fluff" was there for a reason. "Simple" means easy to understand and not particularly complex; "efficient" means the object does one thing and one thing well; "reusable" means the object is not tied down into any particular infrastructure; "work together to accomplish a larger goal" means that an object is designed to work with other objects, not designed to solve a big problem. I suppose I could have expounded on the terms but I didn't figure anyone cared enough.

I'm still not terribly convinced anyone actually cares enough.

Comment author: anonym 10 May 2009 10:03:18PM -1 points [-]

The qualifiers -- simple, efficient, reusable -- distinguish good OO code from bad OO code. They have nothing to do with OO in general. Bad programmers will write object oriented code that is complex, inefficient, and non-reusable. Likewise, "working together to accomplish a goal" applies just as much to subroutines in an imperative language or functions in a functional programming language.

Comment author: anonym 13 May 2009 03:00:34AM 0 points [-]

Hmm, parent is at -2. I would be curious how anybody could actually believe (and justify) that OOP

is the concept of designing code around simple, efficient, and reusable objects that can work together to accomplish a larger goal.