请Banq大哥对SOA的思想谈谈

07-08-24 xysniper
    

你好BANQ,能不能对SOA的思想具体谈谈,为什么要有SOA,有什么优点?核心思想是什么?谢谢

    

banq
2007-08-26 15:03

以前写过一些文章:

http://www.jdon.com/artichect/SOA.htm

还有从可重用性快速开发等方面谈:

http://www.jdon.com/artichect/reuse.html

如果说OO可以提高可重用性和软件质量,但是需要程序员OO素质,而现实中程序员OOs素质为0的很多,在这种情况下,通过SOA达到软件构架可拓展性就是另外一条路,因为你的软件中调用的组件大部分是专业软件公司的组件,这些公司组件开发能力强,OO水平高,从而形成两种阵营,高OO素质的程序员所在公司是SOA服务提供商,而没有OO素质的公司就使用SOA服务,借助SOA提高自己软件架构质量。

所以,SOA不但是软件生产方式革命,也是程序员职业生涯的革命,那么觉得Java复杂的程序员,不愿意花力气或不能够提高软件质量,可通过花钱购买SOA服务来得到,,所以SOA服务可以看成现在可重用组件的运行方式,现在组件是通过购买后,再加入到自己的软件中,而通过SOA就只需要一个网址就可以调用使用了。

slangmgh
2007-09-05 14:19

在理解SOA之前,首先需要理解你的问题。SOA是一种解决问题的思想、思路、方法,但是在你理解你自己的问题之前,所有的解决方案都是错误的。

所以,要理解SOA,首先你需要有一个场景,在这个场景中你需要清楚你遇到的问题,然后再来看SOA如何能够解决你遇到的问题(可能SOA能够解决你的问题,可能不能,可能有比SOA性价比更好的解决方案)。