FlashやJava、Silverlightをはじめ、ブラウザ上でリッチなインタフェースを提供するフレームワークは増えつつある。Ajaxはクライアント側でインストールする手間がいらない反面、実現できる機能が限定的になってしまう。3Dを表現するのが難しかったり、マシンパワーを過剰に消費する傾向にある。

Picture 170.png

GoogleのRIAに対する答えがNative Clientか?

 

各プラットフォームがそれを克服するためのプラグインを提供してきた。そしてGoogleの出してきた答えがNative Clientだ。

Native Clientは修正BSDライセンスの下で公開されるオープンソース・ソフトウェアで、何とX86バイナリをそのままブラウザ上で実行してしまうという代物だ。

Native ClientはFirefox向けのプラグインを提供している(アドオンではないので注意)。Windows、Mac OSX、Linux向けにパッケージが提供されているので、皆で利用できる。プラグイン単体では提供されていないのでNative Client全体をダウンロードしてコンパイルする必要がある。

Picture 173.png

ライフゲーム。細かく描画されても動作は高速だ

 

インストールが終わったらサンプルのHTMLファイルを開いてみると良い。ブラウザ上で地球が回転したり、ライフゲームを行ったりフラクタル画像が実現できる。動作はかなり高速だ。さすがにネイティブに実行しているだけのことはある。

他にもパッチを当てる必要があるがQuakeを動作させることもできるようだ。ローカルアプリケーション実行環境も用意されているので、ブラウザ上のみならずローカルコンピュータ上でも同じアプリケーションが実行できるのが魅力だ。

Native Clientを使えばローカルアプリケーションやブラウザの垣根を越えるのはもちろん、Flashなどで感じていた動作の重さも感じられずにリッチなインタフェースを体感できるようになる。ネットワークやRPCなども利用できるので、こったアプリケーションを作るのも簡単だろう。リリース直後とあって、バージョンは0.1だが今後に期待のかかるオープンソース・ソフトウェアだ。

Picture 174.png

フラクタル。拡大や移動、カラー変更ができる

 

Picture 172.png

Firefox向けにプラグインとして動作する

 

**nativeclient - Google Code

 **
http://code.google.com/p/nativeclient/