tag:blogger.com,1999:blog-14415229.post3572536219270343959..comments2023-10-10T16:55:02.139+02:00Comments on Chase The Devil: OO DesillusionFabienhttp://www.blogger.com/profile/07288327695801480778noreply@blogger.comBlogger5125tag:blogger.com,1999:blog-14415229.post-12024693109228678322008-08-30T21:52:00.000+02:002008-08-30T21:52:00.000+02:00You don't really have a problem with OO, you have ...You don't really have a problem with OO, you have a problem with OO *abuse*.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-14415229.post-46898263073840874552008-08-30T07:08:00.000+02:002008-08-30T07:08:00.000+02:00It's important to remember that, while the popular...It's important to remember that, while the popularization of OOP may have begun with Meyer's book in the late 80's, object oriented design itself preceded relational technology. The marketing was so good that people now think it's the other way around... but to me a relational model is more powerful, and an object model is a special case of a relational one.Chase Saundershttps://www.blogger.com/profile/18367661066053842171noreply@blogger.comtag:blogger.com,1999:blog-14415229.post-52175886451898225332008-08-30T06:39:00.000+02:002008-08-30T06:39:00.000+02:00Hi, I totally agree with you, I've been using java...Hi, <BR/><BR/>I totally agree with you, I've been using java for 6 years and now coding in PHP for two more years feels like I've been doing lot of plumbing when using java.<BR/><BR/>Take a look at my RCP like framework http://www.microcalls.org where I take a simplistic approach to DB connections using XML<BR/><BR/>My prefered pattern is MVC which is usefull in all the projects.Agustí Ponshttps://www.blogger.com/profile/11432871832475029159noreply@blogger.comtag:blogger.com,1999:blog-14415229.post-70109363168574240842008-08-29T23:20:00.000+02:002008-08-29T23:20:00.000+02:00I think the desillusion you describe is more of th...I think the desillusion you describe is more of the desillusion concerning design patterns.<BR/><BR/>I like design patterns. But as you said when after reading the GOF-Book suddenly everybody sees patterns everywhere, your whole code base can explode because of all those factories, proxies, adapters and so on. I have the impression that this seems to happen more often in the Java world where design patterns are some kind of lingua franca (without them your code looks too simple, too understandable). One example that always pops up to my mind the Spring Framework where you can find killer class names like 'ContextSingletonBeanFactoryLocator' or 'SimpleRemoteStatelessSessionProxyFactoryBean'. Yet Spring is very successful and I'm surely in a minority but my brain buzzes when it must dig through all those abstract concepts to grasp the flesh & bones of a program. I left this programming world a while ago and am now happy in C#-Land.<BR/><BR/>Don't blame OO for these outgrowths, the problem always sits in front of the computer.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-14415229.post-60591177231658781752008-08-29T17:53:00.000+02:002008-08-29T17:53:00.000+02:00In my opinion, OO was derailed by the idea that OO...In my opinion, OO was derailed by the idea that OO was all about using dynamic dispatching to do cool stuff.<BR/><BR/>There seem to be two major schools of thought about object orientation. One school holds that a class models something, while the other holds that a class encapsulates behaviors along with any necessary state.<BR/><BR/>One obvious distinction between the former school—sometimes called the Scandinavian School—and the latter school—sometimes called the American school—is that in the Scandinavian school a class is typically designed as a collection of data along with some methods to support that data, while in the American school a class is typically designed as a collection of methods along with some data to support those methods.<BR/><BR/>Meyer was (is?) basically of the Scandinavian School, although with a strong interest in the "reuse" aspects stressed by the American School. Neither the Scandinavian school nor Meyer's modified view prevailed, though. Instead the American school—promoted by Robert C. Martin and the Gang of Four among others—won out.<BR/><BR/>Some practitioners of the American school got carried away in their zeal that OO=good and procedural=evil. This led to bizarre (IMHO) practices such as you've mentioned of trying to refactor every "if" and "case" into a dynamically dispatched method call.<BR/><BR/>(It has been argued, and I'm inclined to agree, that there is a third school of OO championed by Alan Kay. From what I can tell, that school tends to be more concerned with objects than classes.)Doughttps://www.blogger.com/profile/03387544320506615807noreply@blogger.com