普元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從面向服務開始而又基于構件的”的說法。