构件技术与中间件
引言?
網絡計算帶領軟件產業進入了一個新的時代,商機無限,但同時挑戰也無限。以電子商務為代表的技術潮流正將大到企業計算、小到個人數字代理的各種應用,在世界范圍內聯結起來,軟件制造業正面臨著一些新的課題,如復雜的分布環境、靈活的應用模式、廣泛的包容性等,傳統的軟件設計思想已遠遠不夠。?
在這一背景下, 構件技術應運而生,并逐漸炙手可熱。不同于OO技術強調對個體的抽象, 構件則更推廣了對象封裝的內涵,側重于復雜系統中組成部分的協調關系,強調實體在環境中的存在形式,形成一個專門的技術領域。?
中間件作為存在于系統軟件與應用之間的特殊層次,抽象了典型的應用模式,從而使應用軟件制造者可以更多地將思路放在業務邏輯中,并基于標準的形式進行開發,這樣就使軟件構架化成為可能。一些工業標準的推出,進一步使 中間件成為可復用 構件的運行框架,加速了軟件復用的現實化進程。?
本文從 構件在現實軟件發展中的地位展開,分析了 中間件在系統組織層次中所起的作用,闡述了 構件化思想對 中間件本身的促進作用,提出了一種 構件化 中間件的發展模式。?
構件技術的基本思想?
OO技術是在"數據+算法"的基礎上提升了對事物的認識方法,對象的概念符合人們認識世界的習慣。而 構件的思想則更多地將重點從建模本身發展到對軟件生產的考慮,即 構件可以在應用領域的軟件生產中作為零件納入新的體系中被重用。因此, 構件是OO思想的沿襲和擴展,認識事物的角度從對象個體本身上升到個體在群體中的作用。?
構件有幾個基本屬性:?
1、 構件是可獨立配置的單元,因此 構件必須自包容。?
2、 構件強調與環境和其他 構件的分離,因此 構件的實現是嚴格封裝的,外界沒機會或沒必要知道 構件內部的實現細節。?
3、 構件可以在適當的環境中被復合使用,因此 構件需要提供清楚的接口規范,可以與環境交互。?
4、 構件不應當是持續的,即 構件沒有個體特有的屬性,理解為 構件不應當與自身副本區別,在任何環境中,最多僅有特定 構件的一份副本。?
可以看出, 構件沿襲了對象的封裝特性,但同時并不局限在一個對象,其內部可以封裝一個或多個類、原型對象甚至過程,結構是靈活的。 構件突出了自包容和被包容的特性,這就是作為軟件生產線上作為零件的必要特征。?
構件技術的關鍵點涉及 構件做什么、 構件交互的規則、 構件存在的環境等,相應在現實中有各種支撐性的技術,如:?
1、 構件模型,研究 構件的本質特征及 構件間的關系;?
2、 構件描述語言,以 構件模型為基礎,解決 構件的精確描述、理解和組裝問題;?
3、 構件分類與檢索,研究 構件的分類策略、組織模式及檢索策略,建立 構件庫系統,支持 構件的有效管理;?
4、 構件復合組裝,包括源代碼級的組裝和基于 構件對象互操作性的運行級組裝;?
5、標準化,包括 構件模型的標準化和 構件庫的標準化;?
6、軟件構架,研究如何快速、可靠地應用可復用 構件系統進行系統構造的方式,著重于軟件系統自身的整體結構和 構件間的互聯。?
中間件: 構件存在的基礎?
構件技術在最初時更多是作為一種思想存在,進而才在一些關鍵的環節上發展出解決問題的技術分支。 構件的存在某種程度上極大地依賴了構架技術,或環境、基礎設施、計算平臺,只有在適當的構架中,軟件才有可能被抽象和隔離,最終成為 構件。因此,單獨討論 構件是抽象而空洞的。構架不是操作系統、數據庫或網絡協議,也不完全是應用,而是在某種特定意義上的 構件運行容器,層次上界于應用和基礎設施之間。?
中間件,從本質上是對分布式應用的抽象,因而拋開了與應用相關的業務邏輯的細節,保留了典型的分布交互模式的關鍵特征。經過抽象,將紛繁復雜的分布式系統經過提煉和必要的隔離后,以統一的層面形式呈現給應用。應用在 中間件提供的環境中可以更好地集中于業務邏輯上,并以 構件化的形式存在,最終自然而然地在異構環境中實現良好的協同工作。?
不難看出, 中間件與構架實際是從兩種不同的角度看待軟件的中間層次,可以這樣說: 中間件就是構架,或 構件模型的具體實現,是 構件軟件存在的基礎, 中間件促進了 構件化軟件。從下面列舉的一些 中間件的特征,可以看出, 中間件與構架本質上是一致的。
網絡計算帶領軟件產業進入了一個新的時代,商機無限,但同時挑戰也無限。以電子商務為代表的技術潮流正將大到企業計算、小到個人數字代理的各種應用,在世界范圍內聯結起來,軟件制造業正面臨著一些新的課題,如復雜的分布環境、靈活的應用模式、廣泛的包容性等,傳統的軟件設計思想已遠遠不夠。?
在這一背景下, 構件技術應運而生,并逐漸炙手可熱。不同于OO技術強調對個體的抽象, 構件則更推廣了對象封裝的內涵,側重于復雜系統中組成部分的協調關系,強調實體在環境中的存在形式,形成一個專門的技術領域。?
中間件作為存在于系統軟件與應用之間的特殊層次,抽象了典型的應用模式,從而使應用軟件制造者可以更多地將思路放在業務邏輯中,并基于標準的形式進行開發,這樣就使軟件構架化成為可能。一些工業標準的推出,進一步使 中間件成為可復用 構件的運行框架,加速了軟件復用的現實化進程。?
本文從 構件在現實軟件發展中的地位展開,分析了 中間件在系統組織層次中所起的作用,闡述了 構件化思想對 中間件本身的促進作用,提出了一種 構件化 中間件的發展模式。?
構件技術的基本思想?
OO技術是在"數據+算法"的基礎上提升了對事物的認識方法,對象的概念符合人們認識世界的習慣。而 構件的思想則更多地將重點從建模本身發展到對軟件生產的考慮,即 構件可以在應用領域的軟件生產中作為零件納入新的體系中被重用。因此, 構件是OO思想的沿襲和擴展,認識事物的角度從對象個體本身上升到個體在群體中的作用。?
構件有幾個基本屬性:?
1、 構件是可獨立配置的單元,因此 構件必須自包容。?
2、 構件強調與環境和其他 構件的分離,因此 構件的實現是嚴格封裝的,外界沒機會或沒必要知道 構件內部的實現細節。?
3、 構件可以在適當的環境中被復合使用,因此 構件需要提供清楚的接口規范,可以與環境交互。?
4、 構件不應當是持續的,即 構件沒有個體特有的屬性,理解為 構件不應當與自身副本區別,在任何環境中,最多僅有特定 構件的一份副本。?
可以看出, 構件沿襲了對象的封裝特性,但同時并不局限在一個對象,其內部可以封裝一個或多個類、原型對象甚至過程,結構是靈活的。 構件突出了自包容和被包容的特性,這就是作為軟件生產線上作為零件的必要特征。?
構件技術的關鍵點涉及 構件做什么、 構件交互的規則、 構件存在的環境等,相應在現實中有各種支撐性的技術,如:?
1、 構件模型,研究 構件的本質特征及 構件間的關系;?
2、 構件描述語言,以 構件模型為基礎,解決 構件的精確描述、理解和組裝問題;?
3、 構件分類與檢索,研究 構件的分類策略、組織模式及檢索策略,建立 構件庫系統,支持 構件的有效管理;?
4、 構件復合組裝,包括源代碼級的組裝和基于 構件對象互操作性的運行級組裝;?
5、標準化,包括 構件模型的標準化和 構件庫的標準化;?
6、軟件構架,研究如何快速、可靠地應用可復用 構件系統進行系統構造的方式,著重于軟件系統自身的整體結構和 構件間的互聯。?
中間件: 構件存在的基礎?
構件技術在最初時更多是作為一種思想存在,進而才在一些關鍵的環節上發展出解決問題的技術分支。 構件的存在某種程度上極大地依賴了構架技術,或環境、基礎設施、計算平臺,只有在適當的構架中,軟件才有可能被抽象和隔離,最終成為 構件。因此,單獨討論 構件是抽象而空洞的。構架不是操作系統、數據庫或網絡協議,也不完全是應用,而是在某種特定意義上的 構件運行容器,層次上界于應用和基礎設施之間。?
中間件,從本質上是對分布式應用的抽象,因而拋開了與應用相關的業務邏輯的細節,保留了典型的分布交互模式的關鍵特征。經過抽象,將紛繁復雜的分布式系統經過提煉和必要的隔離后,以統一的層面形式呈現給應用。應用在 中間件提供的環境中可以更好地集中于業務邏輯上,并以 構件化的形式存在,最終自然而然地在異構環境中實現良好的協同工作。?
不難看出, 中間件與構架實際是從兩種不同的角度看待軟件的中間層次,可以這樣說: 中間件就是構架,或 構件模型的具體實現,是 構件軟件存在的基礎, 中間件促進了 構件化軟件。從下面列舉的一些 中間件的特征,可以看出, 中間件與構架本質上是一致的。
總結
- 上一篇: HDU1007 查找平面最近点对
- 下一篇: Python+Django+Eclips