Found this thread on TSS that referred to an eWeek article where Don Box, formerly of Develop Mentor and current Architect for XML Messaging @ Microsoft talks about SOA. To paraphrase the article, Don Box says that the world of services and service-oriented architectures will eclipse object-oriented programming and OO will become irrelevant.
ok. What’s the point of this article? Isn’t talking about interfaces vs. implementation like comparing apples to oranges? The idea of services and decoupling systems to reduce cohesion makes sense and people are doing that. However, SOA and OO aren’t mutually exclusive.
In my world of SOA, services have published interfaces that are de-coupled from the applications that use them and deployed to allow maximum reuse, regardless of the programming language, application server, etc. used. Nothing in that precludes me from using objects in building the coarse-grained business process that I am exposing as a service.
To play devil’s advocate, I could argue that SOA means we don’t care about how we build the guts of the service as long as the piece of functionality is exposed as a service. But what about objects, encapsulation, inheritance, and polymorphism? Isn’t the goal of OOP to simplify our lives and make software maintenance easier?
I’ve actually had the pleasure of meeting Don Box and he is really a brilliant guy. I’m wondering if he really believes this or did eWeek made up the whole thing. Who knows? It was interesting to see that the last line of the article was ‘Box said he based his presentation on a new book he has in the works’. Hmmm.. Maybe Don’s trying to get some buzz started about his new book 🙂