對象管理體系結構指南

對象管理體系結構指南

對象管理組織OMG(Object Management Group)是成立於1989年的非盈利聯盟,其宗旨是通過制訂與維護規範標準以促進面向對象技術的理論與實踐發展,特別是在日新月異的分散式計算領域。由OMG發布的《對象管理體系結構指南》是關於對象管理體系結構OMA(Object Management Architecture)的正式規範,該指南描述了OMG的技術目標與相關術語,並為所有CORBA規範提供概念性的基礎設施。指南的核心內容是對象模型與參考模型,其中對象模型定義對象外部可見的、獨立於具體實現的語義,參考模型則標識與刻劃組成OMA的組件、接口與協定。

基本介紹

  • 中文名:對象管理體系結構指南
  • 外文名:Object Management Architecture guide
  • 簡稱:OMA指南
  • 發布組織:對象管理組織OMG
  • 發布時間:1990年
  • 核心:對象模型和參考模型
  • 相關概念:OMG、OMA、CORBA等
基本介紹,對象請求代理(ORB),公用對象服務,公用設施,應用程式對象,

基本介紹

公共對象請求代理體系結構(Common Object Request Broker Architecture,簡稱CORBA)是一個擁有800多個成員公司的非營利性國際組織即對象管理組織(OMG)的研究成果,這個組織包括了計算機工業界的各個主要的公司(如IBM,Microsoft,Apple,HP,SUN等),代表了整個計算機工業。
CORBA的核心是對象請求代理(Object Request Broker,簡稱ORB)。ORB就是對象匯流排,它的作用就像一個中間人,使得各個對象能夠相互傳遞請求。儘管ORB是在客戶機/伺服器的環境中工作的,但是,與ORB一同工作的各個對象既可以是客戶機,也可以是伺服器。如果對象發出請求,那么它就是客戶機;如果對象接收和處理請求,則是伺服器。同一個對象在不同的時刻可能表現為客戶機也可能表現為伺服器,這要取決於具體情況。ORB作為一種中間件,它有能力包容現有的客戶機/伺服器中間件的任何一種形式。也就是說,CORBA將對象作為一個統一的隱性象徵,將現有的所有套用軟體都包容到ORB這一對象匯流排上來。同時,它也為基於組件的軟體開發奠定了堅實的基礎。
CORBA允許用戶創建通用的對象,然後通過讓對象繼承相應的服務,使對象具有事務處理、安全性、持久性等所需要的特性。這也就意味著可以設計一些具有常用功能的通用對象,然後在系統運行時建立,與中間件混合成的適當的對象。CORBA的這種可以通過中間件進行混合的特性,極大地簡化了套用編程的工作,同時又能保證系統的良好的可復用性、高可靠性和高質量。
對象管理體系結構指南
1990年秋,OMG第一次發表了對象管理體系結構指南(Object ManagementArchitecture,簡稱OMA),1992年進行了修訂,1995年又加入了關於公用設施的細節。圖1表示了OMA的四個主要的單元:
圖1OMG的對象管理體系結構圖1OMG的對象管理體系結構
(1)對象請求代理(ORB)。ORB定義了CORBA對象匯流排。
(2)CORBA服務(CORBA Services)。CORBA服務定義了系統級對象框架,用來擴展CORBA對象匯流排。
(3)CORBA公用設施(CORBA Common Facilities)。CORBA公用設施定義了可以直接被商務對象使用的水平和垂直應用程式框架。
(4)應用程式對象(Application Objects)。應用程式對象包括商務對象及其應用程式,它們是CORBA基礎結構的最終使用者。下面對OMA的這四個方面進行簡單介紹。

對象請求代理(ORB)

對象請求代理(ORB)是管理對象之問進行通信和數據交換的中間件。ORB的功能類似於硬體匯流排的功能,它提供了對象之間信息流動所需的通路,因此也稱為對象匯流排。ORB可支持分散式對象之間的互操作性、可復用性和可移植性。通過它,各個對象可以透明地向本地或遠程的其他對象發出請求或接收回響。ORB提供了許多分散式中間件服務,ORB使得各個對象可以在運行時彼此發現並調用對方的服務。ORB是OMA的核心,它也是OMG最先定義好並且由軟體供應商最先實現的部分。圖2是對象之間通過ORB進行通信和數據交換的示意圖。
圖2 客戶對象與伺服器對象通過ORB進行通信和數據交換圖2 客戶對象與伺服器對象通過ORB進行通信和數據交換

公用對象服務

公用對象服務是CORBA提供的系統級服務的集合。公用對象服務可以看成是對ORB的功能的擴充和補足。公用對象服務為創建對象、對象訪問控制、對象跟蹤和對象引用等提供了一套標準的服務。公用對象服務使得應用程式開發人員只需調用這些對象服務功能即可,而沒有必要完全由應用程式開發人員從頭進行開發。現在已經實現或正在實現的一些公用對象服務包括:命名、持久性、生命期、屬性、並發、集合、安全性、交易器、外表化、事件、事務處理、查詢、關係、計時、特許等服務。

公用設施

ORB和公用對象服務是OMA的底層基本技術,而公用設施則是基於這些技術向應用程式開發者和最終用戶提供一些共同性的對象組件,如複合文檔等。CORBA公用設施是CORBA向應用程式對象提供直接套用服務的框架集合。公用設施分為兩類:水平公用設施和垂直公用設施。目前,CORBA提供的水平公用設施有:
(1)用戶界面設施:提供類似於OpenDoc和OLE的複合文檔技術和就地編輯的功能;
(2)信息管理設施:提供複合文檔存儲和數據交換服務,還可用於表示和編碼組件數據、定義和交換元數據、進行信息建模等;
(3)系統管理設施:提供管理、配置、安裝、操縱、修補分散式對象組件等的接口和服務;
(4)任務管理設施:提供管理工作流、長事務、代理(Agent)、腳本、規則和任務自動化的框架。
垂直公用設施提供諸如金融、健康、製造、零售等“垂直”市場領域的接口和標準,以方便各領域對象的相互操作。

應用程式對象

應用程式對象包括業務對象及其應用程式,它們是CORBA基礎結構的最終使用者。業務對象提供了一種很自然的方式來描述與套用相關的概念,如顧客、訂單、支付等。對象技術和組件的最終承諾是提供與真實世界更為接近的中粒度組件。根據OMG的業務對象工作組的看法,業務對象是應用程式級的組件.可以套用到無法預測的任意組合當中去。在CORBA中,業務對象可以分為三種。
(1)(狹義的)業務對象:業務對象封裝了數據存儲、元數據、並發以及與實際業務實體相關的業務規則,業務對象還定義了如何對系統中的事件做出反應。
(2)業務過程對象:在CORBA中,不涉及其他業務對象的短期的過程由(1)中的業務對象處理,涉及其他業務對象的長期的過程由業務過程對象處理。業務過程對象通常是將其他的對象結合在一起。
(3)表示對象:即用戶可看到的對象。表示對象通常直接與業務對象通信,用於在螢幕上顯示數據。表示對象有時也可以與業務過程對象直接通信。一個典型的業務對象組件由一個業務對象,一個或多個表示對象和一個業務過程對象組成。
業務對象用於創建可擴展的三層客戶機/伺服器體系結構的解決方案是非常理想的。因為對象和三層模型一樣是可以分解的。業務對象並不是單塊的代碼,而是可以拆分為若干部分,然後根據需要裝配在一起。在三層模型中,用戶層(或稱為表示層)用於表示業務對象的可視方面,通常用表示對象來表示。中間的業務層,通常用業務對象和業務過程對象來表示業務邏輯功能的套用伺服器對象。第三層的數據層使用業務對象和業務過程對象來表示現有的資料庫或其他形式的數據(如檔案)。

相關詞條

熱門詞條

聯絡我們