[This was supposed to go out earlier today but I had a problem with the network service at my hotl ... if only they had a network object ;-) Only messing with you ;-)]

I'm sorry Keith but I can't agree with point 2 at all. Some business people think in terms like OO (without knowing it's OO) but many business people do think procedurally. There are many programmers that think procedurally but quite a lot of brilliant OO programmers. 

As you pointed out earlier there are many people on this list that can influence the way these things get done. I assure you many many many of them became quite brilliant at OO and don't find it that hard at all.

The fallacy is that the there are no procedures in real life. And that both OO and procedural are somehow orthogonal. As I pointed out earlier the world is quite often a mixture of both. And so is OO - a method is just a sequence (or procedure) of statements. And this happens in the large too - banks and other businesses have lots of "procedures".

Also consider this: though there are several ways to model for example an Envelope I bet you that most people would but a method on it called getAddress() (and probably a writeAddress()), or some similar semantic. Even though an Envelope is a very passive object. The idea that you might put this method on a Person object and have the Address on an Envelope as public might be more semantically correct in the real world but I don't know many OO patterns that would bother to attempt it this way. A Person object would just get way to bloated. We tend to put these actions on the object (grammar) rather than the subject even when the object is inanimate. So to assume that "OO" is somehow a perfect way to model the world is not correct.

I know that as I finish this out someone will have found a pattern somewhere that does this the other way ;-)

Also there were a lot of OO people in the early days of OO that had quite awful OO patterns. Many people latched on to these early patterns and never forgot them.  E.g. passing an object by value all over the place - which people do all the time - ans some languages promote! In the real world it's true that objects move around but people use references all the time too. (This point does help your point about bad programmers ;-) So perhaps the truth is closer to yours - but not all those schooled in OO think it's harder  to think this way.

Okay bring on the objections and the patterns ;-)

Actually I think I'll say no more on this thread and give some others a chance.

William

On Oct 6, 2006, at 5:05 AM, Keith Harrison-Broninski wrote:

There are 2 fallacies here.

  1. That semantic richness introduced via techniques such as domain-specific languages can only be done procedurally.  In fact, the opposite is true.  Knowledge management techniques such as ontologies are based directly on object concepts.
  2. That OO thinking is somehow "harder" than procedural thinking.  Bizarrely, the only people who find this are programmers.  Business people, as I have tried to explain, naturally think in OO terms.
-- 

All the best
Keith

http://keith.harrison-broninski.info
Eric Newcomer wrote:
It may seem like we are going backwards in the software industry but actually I see a lot of progress.  In the distinction between a service and an object I also see the potential for introducing domain specific languages and for a helpful division of labor between those who develop services (and should know about and take advantage of the benefits of OO) and those who consume the services (who should not have to deal with that level of complexity).


__._,_.___


SPONSORED LINKS
Computer software program Computer software spy Computer job
Database software Discount computer software

Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___

Reply via email to