![]() |
![]() 最終更新日:2001-02-13 |
「オブジェクト指向技術入門AtoZ」レポート 「分散オブジェクト環境HORB入門」 |
---|
![]() |
講師:萩本順三氏(株式会社豆蔵) [資料(PDF: 397KB)] |
「HORB」は、Javaが立ち上げられて間もない1995年に通産省の電総研に所属する平野聡氏によってリリースされた、世界初のJavaベースの分散オブジェクト技術である。萩本氏のこのセッションは、現在氏自身も深くその開発に関わっているこのHORBを、入門的に解説するものとなった。
萩本氏からはまず、HORBの主だった特色が紹介された。すなわち、HORBは商用ないし研究において無償での利用が可能で、ソースコードが公開されているオープンソースソフトウェアであるということ、そしてJavaを知っていれば誰でも使えるプログラミングインターフェイスを有している、などの点が強調された。さらに萩本氏からは、平野氏によるリリースから今日のようなオープンソース運営に至る、HORBをめぐる状況の遷移が時系列に沿うかたちで紹介された。 次にHORBの主な機能と特徴であるが、まず挙げられるのが、SunのJavaと100%互換性があり、あらゆるJava処理系で動作することである。ただ、機能的にはJDK 1.1ベースであり、1.2のものはあえて利用されていない。これは、萩本氏によれば「組み込み系でも動くようなコアにしたかった」からだそうだ。そのほかセッションでは、CORBA IIOPのサポートやIDLが不要であること、軽量・高速であり組み込み系にも適していること、非同期メソッドの採用など、HORBの特徴が一通り紹介された。 なかでも、HORBにおける、とりわけ顕著な特徴が、利用者にやさしいプログラミングインターフェイスを提供している点である。そのねらいは、もちろん初心者にも取り組みやすい環境を提供するということにもあるが、さらに重要なのは、現在開発現場で主に用いられている反復型の開発プロセスをより良くサポートするということである。この点について萩本氏は、「設計では、はじめからよいものができるわけではなく、反復開発によって練り上げられていくことになる。そして、反復開発ではアイデアをそのままの形で容易に実現する環境を提供して、より早期に技術的リスクを解決しておくことが重要だ」と説明する。 HORBではこうした環境を実現するために、次のような仕組みが採られている。まず、インターフェイス不要で、思いついたクラスをそのままORB化でき、継承可能なリモートオブジェクトを実現している。そして、クライアント側で代理オブジェクトを生成することでサーバー側にリモートオブジェクトを自動生成することが可能となっている。さらに、非同期メソッドをサポートするなどの点もあわせ、まさに他の分散ミドルウェアに見られない果敢な技術的挑戦がなされており、その結果、反復開発のサイクルを効率化することに貢献している。 以上のようなHORBのコンセプトが紹介されたあと、セッションは、実際のHORBプログラミングの説明に入っていく。具体的には、単純なテキストを出力する通常のJavaプログラムをHORBプログラムへ変更して、コンパイルおよび実行を行なう方法が紹介され、そのなかで代理オブジェクトの利用やHORBにおけるプログラムの動作イメージ、分散OOアーキテクチャについて解説も行なわれた。 続いて萩本氏からは、実際にHORBが適用されているシステムのいくつかの例が紹介された。設備の遠隔監視&操作データ収集システム、駐車場誘導システム、手話学習システム、対戦ゲーム、医療情報システムなど、HORBはすでに多様な分野のさまざまなシステム上で実績を上げているのである。 最後に萩本氏は、「分散オブジェクトのアーキテクチャを自分たちで作っていくというのは非常に勉強になります」と、会場にHORB Openへの参加を呼びかけた。そんな萩本氏からは、この日本発の分散オブジェクト環境であるHORBを、オープンソースソフトウェアとしての運営をベースに、より健全に、より使いやすいものへと育てていこうとする熱意がかいま見えた。 |
![]() |