EvilRob.org -> Weblog

Sysadmin Field Notes

OOP MIA

December 20, 2005

Dave Churchville writes about J2EE killing OOP, and I think I mostly agree. Certainly a whole lot of the applications I've seen really aren't very OO.

For me the amusing part is that truth be told my own stuff hasn't been that OO. It wasn't really until this latest project, where we had a clear mentor who knew what he was doing, do I think the idea finally clicked home for me. I always had a vague notion that objects with a giant pile of getters/setters and not much else weren't really the best use of OOP.

But put me (and the rest of the team) in front of someone who really knows what they are doing 5 days a week, and very quickly it all starts to click.

It goes back to mentorship again. Teach people to design OO applications and they will. Teach them to stick stuff into the "web layer", "business layer", and "data layer" then translate it 50 times between each with DTO's and proxy classes and they will.

I had to start working on an ASP.net application, where we treated the code behinds and pages as completely dumb dialogs and drove them with controllers before I really saw how to separate the behavior out of the http infected classes.

Anyway, I can't agree more with this part:


But I fear that the last 5 years has produced a pile of brittle, over-engineered applications whose internals are exposed.

Most web-apps definitely suck, and it takes a long time to fix them once they are broken.

Update: One more thing. Corporations want it this way, because it matches with the way they see the world (if we buy a good enough tool/create a good enough process/etc. then we will be able to create good software). Getting OO right is hard; a lot harder than just handing someone a bunch of framework classes and telling them to put the code in between the /* your code goes here */ generated comments. Corporations don't tend to trust the "hire smart people and let them take care of things" model, so they demand tools like this. Because Microsoft and Sun want to stay in business, they produce them.

Remember, software companies exist only to sell you software. If you're successful, great, maybe it means you'll buy more software, but the real quality of your end application I think matters very little to them. The people writing the code matter very little, because they are not the ones generally making the decisions about what platforms to use. So the platforms are designed for what the managers would like reality to be or how they see it, regardless of how things really are.

Posted by rmeyer at 11:15 PM | TrackBack (0)

This is Rob Meyer's weblog, a weblog focused on software development and system administration based on 10 years of experience. Want to explore further? You can find out more me or see the rest of my website.

Wondering if I've written on something in particular? Try searching:

You might want to take a look at some of the more requested postings (as judged by incoming traffic):

Want more? Subscribe to this site or contact me at rob at big dis dot com.

See my writings on:


Powered by Movable Type | Technorati Profile