大型程序開發者對“軟件部件”(Software Component)概念的態度向來是喜憂參半。喜的是如果他們能夠利用較細規模的軟件部件來組合大型程序,無論在系統維護或開發方面都會變得簡單易行。但是,由于一直沒有統一的編程語言,原有的程序庫也不能輕意轉移。因此軟件部件的設想一直無法真正實現。只有當Java語言出現,并且解決了多平臺及各種編程語言的不兼容性之后,軟件部件技術才會真正用于加快大型程序的開發進程。
微軟的ActiveX技術就蘊含了“軟件部件”的概念,而且還進一步將這種技術拓展為更加完善的DCOM技術。DCOM是對原COM技術的延續,主要是增加了遠程調用COM部件的功能。另外,由于它結合原來COM中的ActiveX技術,因此使得原有的各種ActiveX部件,也因DCOM的兼容性而變成可被遠程調用的部件。由于DCOM需要利用服務器資源來運行服務器端的DCOM部件,因此,微軟在NT4.0服務里,首先引入了對DCOM部件的運行功能。
因為DCOM派生于ActiveX技術,所以它可以支持現有的TCP/IP、HTTP等網絡協議,還對Java語言兼容。同時,微軟也授權在UNIX、SOLARIS等其他操作系統平臺上使用這種技術。微軟希望能將DCOM技術發展成為一項公用的網絡技術,也希望它能夠成為未來軟件部件的核心技術,以節省現有系統在人力、物力方面的消耗。
原文轉自:http://www.anti-gravitydesign.com