SOA is not a replacement for OO

SOA is not a replacement for OO, no matter what Yogi says.

No No No! 🙂< ?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

SOA is not about replacing OO. SOA is about one aspect (Yes AOP works
great with SOA) of your application.
Your application still needs to be designed well and that typically means
application of all the OO design principals which you have come to know and love
(or hate).

A principle of SOA is to not expose complex types (#1), yes. But this is best done < ?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />IMO through a facade (not necessarily the
pattern) or aspect which still uses well designed objects underneath. (#2)Using composition much more is not
really a requirement. In fact I
wouldn’t change my approach to OO design because of SOA, but using composition
to expose services is a great approach, often through use of a the facade
pattern.

Separating business logic and process from the business data really has
nothing to do with SOA and everything to do with a good OO design. If you aren’t already doing this, then
it is likely your OO designs could use some improvements. Since many of us are already doing this,
we are just more read for SOA when we choose to implement that
aspect.


I’m a huge fan of
DTRT, do the right thing. So far I have observed that SOA doesn’t change
the right thing, and that 99% of the time the right thing is continuing OO
design.