中介軟體作為一大類系統軟體,與作業系統,資料庫管理系統並稱"三套車",其重要性是不言而語的。
那什麼是中介軟體?
IDC給出的一個定義:中介軟體是一種獨立的系統軟體或服務程式,分布式應用軟體藉助這種軟體在不同的技術之間共用資源,中介軟體位於客戶機伺服器的作業系統之上,管理計算資源和網路通訊。
從這些定義中可以看出:
·中介軟體是一類軟體,而非一種軟體;
·中介軟體不僅僅實現互連,還要實現應用之間的互操作;
·中介軟體是基於分散式處理的軟體,最突出的特點是其網路通訊功能。
接著,我們再來看看什麼是Web Services?
Web Services就是可以通過web描述、發布、定位和調用的模組化應用。Web Services可以執行任何功能,從簡單的請求到複雜的業務過程。一旦Web Services被部署,其他的應用程式或是Web Services就能夠發現並且調用這個部署的服務。
Web Services通過簡易物件存取通訊協定 (SOAP) (Simple Object Access Protocol,SOAP)來調用。SOAP是一種輕量級的訊息協議,它允許用任何語言編寫的任何類型的對象在任何平台之上相互連信。SOAP訊息採用可延伸標記語言 (XML)(XML)進行編碼,一般通過HTTP進行傳輸。與其它的分散式運算技術不同,Web Services是松耦合的,而且能夠動態地定位其他在internet上提供服務的組件,並且與它們互動。
Web Services使用諸如SOAP訊息這樣的XML訊息,通過一種良好定義的訊息交換模式來調用。通過描述調用服務所必需的資料,Web Services描述語言 (WSDL)文檔定義了訊息交換模式。
一、組件概念
簡而言之,組件就是對象。C++ Builder中叫組件,Delphi中叫組件,而在Visual BASIC中叫控制項。
組件是對資料和方法的簡單封裝。C++ Builder中,一個組件就是一個從TComponent派生出來的特定對象。組件可以有自己的屬性和方法。屬性是組件資料的簡單訪問者。方法則是組件的一些簡單而可見的功能。
組件是C++ Builder環境中最令人激動的部分。使用組件可以實現拖放式編程、快速的屬性處理以及真正的物件導向的設計。VCL和CLX組件是C++ Builder系統的核心。
二、組件應用
使用現成的組件來開發應用程式時,組件工作在兩種模式下:設計時態和運行時態。
在設計時態下,組件顯示在C++ Builder表單編輯器下的一個表單中。設計時態下組件的方法不能被調用,組件不能與終端使用者直接進行互動操作,也不需要實現組件的全部功能。
在運行狀態下,組件工作在一個確實已經啟動並執行應用程式中。組件必須正確地將自身表示出來,它需要對方法的調用進行處理並實現與其他組件之間有效協同工作。
設計時態下所有的組件在表單中都是可見的,但在運行時態下不一定可見。如TTable、TQuery和TDataSet在運行時態下就不可見,但他們均完成了重要的功能。
三、組件建立
建立組件就是自行設計製作出新的組件。
設計組件是一項繁重的工作。自行開發組件與使用組件進行可視化程式開發存在著極大的不同,要求程式員熟知原有的VCL類庫結構,精通物件導向程式設計。
設計組件是一項艱苦的工作。對於組件的開發人員,組件是純粹的代碼。組件的開發不是一個可視化的開發過程,而是用C++或Object Pascal嚴格編製代碼的工作。實際上,建立新群組件使我們回到傳統開發工具的時代。雖然這是一個複雜的過程,但也是一個一勞永逸的過程。
建立組件的最大意義在於封裝重複的工作,其次是可以擴充現有組件的功能。
組件建立過程包括設計、開發、調試(就是所謂的3D's)工作,然後是組件的使用。
組件開發人員應該掌握的三項主要內容是:屬性、事件和方法。
模式,即pattern。其實就是解決某一類問題的方法論。你把解決某類問題的方法總結歸納到理論高度,那就是模式。
Alexander給出的經典定義是:每個模式都描述了一個在我們的環境中不斷出現的問題,然後描述了該問題的解決方案的核心。通過這種方式,你可以無數次地使用那些已有的解決方案,無需在重複相同的工作。
模式有不同的領域,建築領域有建築模式,軟體設計領域也有設計模式。當一個領域逐漸成熟的時候,自然會出現很多模式。
什麼是架構?
架構,即framework。其實就是某種應用的半成品,就是一組組件,供你選用完成你自己的系統。簡單說就是使用別人搭好的舞台,你來做表演。而且,架構一般是成熟的,不斷升級的軟體。
構件(component)是可複用的軟體組成成份,可被用來構造其他軟體。它可以是被封裝的對象類、類樹、一些功能模組、軟體架構(framwork)、軟體構架(或體繫結構Architectural)、文檔、分析件、設計模式(Pattern)等。構件分為構件類和構件執行個體,通過給出構件類的參數,產生執行個體,通過執行個體的組裝和控制來構造相應的應用軟體,這不僅大大提高了軟體開發人員的開發效率,也大大提高了軟體的品質。