オブジェクト指向プログラミング言語におけるオブジェクトについて、オブジェクトを他のプログラムから利用するための接点(インターフェース)を定義するために用いられる言語のことである。
以上、BINARYより抜粋。
SIPropにおいても、言語汎用的なインタフェースの定義言語として使用しますが、これを元に特定言語へコンパイルすることは考慮しません。
IDLを記述する上で、必要最小限のことを解説します。
また、マッピング対象としては、Javaを想定しています。
サンプルコード:
module SIProp { const long typename = 1; interface SIPropClass1 { long operation(in long id); } exception e1 { string reason; }; }
対応表:
IDL | Java |
module | パッケージ |
interface | クラス |
operation | メソッド |
exception | 例外 |
const | 定数宣言 |
型の対応表:
IDL | Java |
boolean | boolean |
char | char |
octet | byte |
string | String |
short | short |
unsigned short | short |
long | int |
unsigned long | int |
long long | long |
unsigned long long | long |
float | float |
double | double |
struct | クラス |
enum | クラス |
union | クラス |
typedef sequence<string> ArrayString | ArrayString[] (配列の指定法) |