西安電子科技大學 軟件構件與中間件技術 簡體中文 DVD 只於電腦播放 構件技術的基本思想 OO技術是在"數據+算法"的基礎上提升了對事物的認識方法,對象的概念符合人們認識世界的習慣。而構件的思想則更多地將重點從建模本身發展到對軟件生產的考慮,即構件可以在應用領域的軟件生產中作為零件納入新的體系中被重用。因此,構件是OO思想的沿襲和擴展,認識事物的角度從對像個體本身上升到個體在群體中的作用。   構件有幾個基本屬性: 1、構件是可獨立配置的單元,因此構件必須自包容。 2、構件強調與環境和其他構件的分離,因此構件的實現是嚴格封裝的,外界沒機會或沒必要知道構件內部的實現細節。 3、構件可以在適當的環境中被複合使用,因此構件需要提供清楚的接口規範,可以與環境交互。 4、構件不應當是持續的,即構件沒有個體特有的屬性,理解為構件不應當與自身副本區別,在任何環境中,最多僅有特定構件的一份副本。 可以看出,構件沿襲了對象的封裝特性,但同時並不局限在一個對象,其內部可以封裝一個或多個類、原型對象甚至過程,結構是靈活的。構件突出了自包容和被包容的特性,這就是作為軟件生產線上作為零件的必要特徵。 構件技術的關鍵點涉及構件做什麼、構件交互的規則、構件存在的環境等,相應在現實中有各種支撐性的技術,如: 1、構件模型,研究構件的本質特徵及構件間的關係; 2、構件描述語言,以構件模型為基礎,解決構件的精確描述、理解和組裝問題; 3、構件分類與檢索,研究構件的分類策略、組織模式及檢索策略,建立構件庫系統,支持構件的有效管理; 4、構件複合組裝,包括源代碼級的組裝和基於構件對象互操作性的運行級組裝; 5、標準化,包括構件模型的標準化和構件庫的標準化; 6、軟件構架,研究如何快速、可靠地應用可複用構件系統進行系統構造的方式,著重於軟件系統自身的整體結構和構件間的互聯。   中間件:構件存在的基礎 構件技術在最初時更多是作為一種思想存在,進而才在一些關鍵的環節上發展出解決問題的技術分支。構件的存在某種程度上極大地依賴了構架技術,或環境、基礎設施、計算平台,只有在適當的構架中,軟件才有可能被抽象和隔離,最終成為構件。因此,單獨討論構件是抽象而空洞的。構架不是操作系統、數據庫或網絡協議,也不完全是應用,而是在某種特定意義上的構件運行容器,層次上界於應用和基礎設施之間。 中間件,從本質上是對分佈式應用的抽象,因而拋開了與應用相關的業務邏輯的細節,保留了典型的分佈交互模式的關鍵特徵。經過抽象,將紛繁複雜的分佈式系統經過提煉和必要的隔離後,以統一的層面形式呈現給應用。應用在中間件提供的環境中可以更好地集中於業務邏輯上,並以構件化的形式存在,最終自然而然地在異構環境中實現良好的協同工作。 不難看出,中間件與構架實際是從兩種不同的角度看待軟件的中間層次,可以這樣說:中間件就是構架,或構件模型的具體實現,是構件軟件存在的基礎,中間件促進了構件化軟件。從下面列舉的一些中間件的特徵,可以看出,中間件與構架本質上是一致的。