普元gocom社区“也谈SOA从面向构件开始”一文提到:
url:http://gocom.primeton.com/blog1180_35.htm?referer=techtargetwsprimeton
############################################################################
面向构件的概念着眼于软件的构造,其语义内涵包括:
1、层次化。软件呈现层次化构造,整体可以由一系列有内在结构的器官,即构件,构成。而构件可以由更小的构件构成。
2、可复用。这些构件可以在不同的软件中以相同的形式出现,完成大致相同的功能。
SOA概念着眼于软件的功能,其语义内涵包括:
1、层次化。软件的功能呈现层次化复合,综合功能由单项功能复合而成,复杂功能由简单功能复合而成。
2、可外化。一个软件需要的功能可以由另一个软件提供。
由于“功能外化”可以看作是互联网时代功能复用的一种形式,面向构件与SOA完全同构。
因此,我们说SOA从面向构件开始,就是SOA通过面向构件去实现,因为面向构件是SOA的自然实现方式。
############################################################################
读后,个人分析如下:
SOA架构体系层次结构(参见对SOA和目前业成熟应用的JavaEE应用方案的一点看法)中,构件应该是“service component”层的主要技术,其之上的层次是“enterprise service”层。(当然这个可以是系统内,也可以是系统间)
再次看一下JEE(这里聚焦在系统内),对应的就是 服务实现 和 服务接口 这个层,并一定程度上借助Facade Pattern。
因此赞成“SOA从面向服务开始而又基于构件的”的说法。