IDL

IDL

接口描述語言
IDL是Interface description language的縮寫,即接口描述語言,是CORBA規範的一部分,是跨平台開發的基礎。[1]
  • 中文名:接口描述語言
  • 外文名:Interface description language
  • 别名:
  • 簡稱:IDL
  • 隸屬:CORBA規範

簡介

接口描述語言(Interface description language,縮寫IDL),是CORBA規範的一部分,是跨平台開發的基礎。

IDL是用來描述軟件組件接口的一種計算機語言。IDL通過一種中立的方式來描述接口,使得在不同平台上運行的對象和用不同語言編寫的程序可以相互通信交流;比如,一個組件用C++寫成,另一個組件用Java寫成。

IDL通常用于遠程調用軟件。 在這種情況下,一般是由遠程客戶終端調用不同操作系統上的對象組件,并且這些對象組件可能是由不同計算機語言編寫的。IDL建立起了兩個不同操作系統間通信的橋梁。

從本質上講,OMG IDL接口定義語言不是作為程序設計語言體現在CORBA體系結構中的,而是用來描述産生對象調用請求的客戶對象和服務對象之間的接口的語言。OMG IDL文件描述數據類型和方法框架,而服務對象則為一個指定的對象實現提供上述數據和方法。

OMG IDL文件描述了服務器提供的服務功能,客戶機可以根據該接口文件描述的方法向服務器提出業務請求。在大多數CORBA産品中都提供IDL到相關編程語言的編譯器。程序設計人員隻需将定義的接口文件輸入編譯器,設定編譯選項後,就可以得到與程序設計語言相關的接口框架文件和輔助文件。IDL文件應用過程如圖1所示。

數據類型

(1)基本數據類型:OMG IDL基本數據類型包括short、long和相應的無符号(unsigned)類型,表示的字長分别為16、32位。

(2)浮點數類型:OMG IDL浮點數類型包括float、double和long double類型。其中float表示單精度浮點數,double表示雙精度浮點數,long double表示擴展的雙精度浮點數。

(3)字符和超大字符類型:OMG IDL定義字符類型char為面向字節的碼集中編碼的單字節字符; 定義類型wchar為從任意字符集中編碼的超大字符。

(4)邏輯類型:用boolean關鍵字定義的一個變量,取值隻有true和false。

(5)八進制類型:用octet關鍵字定義,在網絡傳輸過程中不進行高低位轉換的位元序列。

(6)any數據類型:引入該類型用于表示OMG IDL中任意數據類型。

接口

CORBA接口作為服務對象功能的詳細描述,封裝了服務對象提供服務方法的全部信息,客戶對象利用該接口獲取服務對象的屬性、訪問服務對象中的方法。

接口用關鍵字interface聲明,其中包含的屬性和方法對所有提出服務請求的客戶對象是公開的,如下例:

interface JobManager

{ readonly attribute string FirstName;

attribute string status;

string QueryJobStatus( in long Number, out string property); }

特點

1、IDL是一種規範語言。

2、IDL看上去很像C語言。

3、OMG IDL的目的是定義接口和精簡分布對象的過程。

4、IDL分離對象的接口與其實現。

5、IDL剝離了編程語言和硬件的依賴性。

6、使用IDL定義接口的客戶機程序員不知道接口背後的實現細節。

7、IDL提供一套通用的數據類型,并以這些數據類型來定義更為複雜的數據類型。

上一篇:JIRA

下一篇:ARC

相關詞條

相關搜索

其它詞條