ICDロゴ

CORBA (Common Object Request Broker Architecture)

【コルバ/コーバ】

最終更新日: 2002/02/19

 コンピュータ・アプリケーション同士がネットワーク上で協調/連携して動作するための、オープンかつベンダ非依存のアーキテクチャ。標準化団体のOMG(Object Management Group)によって規定された。

 CORBAでは、標準プロトコルであるIIOP(Internet Inter-Orb Protocol)を用いることにより、ベンダ、マシン、OS、プログラム言語が異なっていても、CORBAベースのプログラム同士が協調して動作できるようにする。

CORBAのアーキテクチャは次の3つの仕様が主なベースとなっている。

●OMG IDL(Interface Definition Language)

 プログラムの構成要素であるオブジェクトのインターフェイス(外部仕様)を記述するための言語で、そのオブジェクトのメソッド(実行することのできる命令)やプロパティ(属性)についての情報を定義する。IDLはプログラミング言語に依存しない仕様になっており、多くの代表的な言語(C、C++、Java、COBOLなど)へ対応づけることができる。このIDLによりCORBAではオブジェクトの個々の実装を他のシステムに対して隠蔽(カプセル化)している。

 実際には、IDLで記述されたコードはIDLコンパイラによりコンパイルされ、クライアントのためのIDLスタブと、サーバ側のオブジェクトためのスタブであるIDLスケルトンが生成される。これらはそれぞれクライアントおよびサーバ上のオブジェクトとリンクされる。

●ORB(Object Request Broker)

 アプリケーションからの処理要求を他のシステム上のアプリケーションに伝えるための仲介プログラム(ミドルウェア)。IDLによりカプセル化されたオブジェクトはORBを通じて同一マシン、あるいはリモート・マシン上からアクセス可能となる。ORBはクライアントからのメソッド起動を受け取り、その要求を実行できるオブジェクトを見つけ出し、そのオブジェクトにパラメータを渡してメソッドを起動し、結果を返す。ORB自体はそれが動作する個々のマシンに依存した実装となる。

●IIOP(Internet Inter-Orb Protocol)

異なるベンダによって提供されるORB間で通信を行うための標準プロトコル。CORBAでは、IIOPによって接続されているそれぞれのマシンのORBを通じて、クライアントがリモート・マシン上のオブジェクトにアクセスする。

Copyright (C) 2000-2007 Digital Advantage Corp.

参考リンク

    OMGのホームページ
    オブジェクト指向に関する各種の活動を行っているOMGのホームページ

アイティメディアの提供サービス

キャリアアップ