「Java FAQ(What's New)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします。(編集局)
最近、急に「リッチクライアント」という言葉を聞くことが多くなった。「リッチクライアント」とは、ユーザーインターフェイスの見栄えや操作性が豊か(リッチ)なクライアントソフトウェアのことを指し示している。
「リッチ」というだけでは、言葉の定義が何となくあいまいではあるのは確かだ。「リッチクライアント」という定義は、操作性の貧弱なWebブラウザベースのアプリケーションと対比した形でよく使われる言葉だ(一時期注目を浴びていた3次元や動画再生のメディアリッチなクラアントの意味とは違う扱いであることに注意されたい)。
インターネット時代になって、クライアント・サーバ型のシステムからWebアプリケーションへのマイグレーションが進んだ。それは、Webアプリケーションがオープンプラットフォームであることや、開発コスト、保守の容易さなどの良い部分がフォーカスされたからだ。その一方、旧来の端末操作に習熟したユーザー層からはWebアプリケーションが必ずしも使いやすいわけではないことが指摘されるようになった。このことがリッチクライアントへの関心を高める大きな理由になっている。
ではここで、Webアプリケーションの欠点を並べてみよう。
さて、これらのポイントを吟味することで、昔のクライアント・サーバの時代に戻る方が良いと考えるのは短絡的である。大切なのは、それぞれの良いところ、悪いところを見極めることだ。次に、リッチクライアント(現在そう呼ばれている技術)の利点を並べてみよう。
これらから、私は、静的ドキュメントの表示にはWebブラウザ、データエントリ業務のような迅速に数値を入力する必要があるものにはリッチクライアントというように、用途に応じて使い分けていく(ハイブリッドでの組み合わせでの利用)のが良いのではと考えている。
ところで、実際に「リッチクライアント」という製品があるわけではない。そこで、一般に広がっている、または広がりつつあるリッチクライアント製品・技術をいくつかご紹介しよう。
以上のようなさまざまなリッチクライアント技術があるが、これらの中で最近になって登場してきた技術はNexawebだ。今回は、国内ではまだ知られてないNexawebに焦点を当ててみることにしよう。
Nexawebは、ユーザーインターフェイスのコンテナとしての役割をもつJavaアプレットがクライアント側に常駐し、サーバとの画面情報のやりとりをXUL(XML-based User-interface Language)というXMLベースの画面記述言語で行う。アプレットがXULを解釈し、GUIを実現するのが仕組みの大枠である。このNexawebの特徴を個条書きにすると以下のようにまとめることができる。
Nexawebの製品群は、J2EEサーバとクライアントの間に位置し、XULのやり取りを行うNexaweb Server、アプレットであるNexaweb Clientと、オーサリングツールであるNexaweb Studioに分かれる。上記の特徴を見ると、カタログスペック的には良い点ばかりに感じられる。しかし登場したばかりの技術であるがゆえに心配事もある。XULに関する情報やドキュメントが少ない。また、日本語表示は可能だが、フォントリソース管理やフォント設定の点で不安は残る。
Nexawebの日本での販売・サポートはVicus Networks Inc.が中心となって進めていくと聞いている。これから周辺情報、サポートとも充実していくことだろう。ちょうど4月末より、Nexaweb の評価版(Nexaweb Studio 3.1)の配布が開始された。Web 上で動作させることのできるデモのほかに、実際のNexaweb Clientで動作するプログラムをWISYWIGベースのオーサリングツールで開発することができる。従来のWebブラウザベースのWebアプリケーションの遅さに閉口している方は、ぜひ一度Nexawebの素早さを体感してみてほしい。
今回は、リッチクライアントの良さを中心的に取り上げた。あらゆるシステム要件においてリッチクライアントが最適解であるとは限らない。ここに注意を怠ってはいけない。旧来のレガシーシステムの良さもあり、広く普及したWebブラウザベースのアプリケーションのアドバンテージも数多い。
大切なことは、システムに全体における大切な部分、高速に動作しなければならない部分、開発費を圧縮しなければいけない部分など、的確な視点で、的確な技術を選択し全体を組み上げるということだ。
次々に登場してくる新しい技術に踊らされることなく、的確な技術を見分ける目を養っていってほしい。そしてまた新しい技術に果敢に挑戦し使っていく姿勢も同じくらい大切なことを忘れないでいてほしい。
次回は6月下旬の公開予定です。
安藤幸央(あんどう ゆきお)
1970年北海道生まれ。現在、株式会社エクサ マルチメディアソリューションセンター所属。フォトリアリスティック3次元コンピュータグラフィックス、リアルタイムグラフィックスやネットワークを利用した各種開発業務に携わる。コンピュータ自動彩色システムや3次元イメージ検索システム大規模データ可視化システム、リアルタイムCG投影システム、建築業界、エンターテインメント向け3次元 CG ソフトの開発、インターネットベースのコンピュータグラフィックスシステムなどを手掛ける。また、Java、Web3D、OpenGL、3DCG の情報源となるWebページをまとめている。
ホームページ:
http://www.gimlay.org/~andoh/java/
所属団体:
OpenGL_Japan (Member)、SIGGRAPH TOKYO (Vice Chairman)
主な著書
「VRML 60分ガイド」(監訳、ソフトバンク)
「これがJava だ! インターネットの新たな主役」(共著、日本経済新聞社)
「The Java3D API仕様」(監修、アスキー)
Copyright © ITmedia, Inc. All Rights Reserved.