写真1●James Gosling氏が新スクリプト言語Java FX Scriptを紹介
米Sun Microsystems社のSoftware部門Executive Vice President、Rich Green氏(右)によるJavaOne開幕冒頭の基調講演の中で、Java言語の生みの親であるJames Gosling氏(左)が登場、新スクリプト言語Java FX Scriptを紹介した。
[画像のクリックで拡大表示]

写真2●Java FX Scriptのサンプル
Java言語で作られたコンポーネントを制御、連携する。Java言語と同様に静的な型付けの言語だが、プログラムを修正するとただちに実行結果に反映する仕組みを備え、Java言語よりも迅速にソフトウエアを開発できる。
[画像のクリックで拡大表示]

写真3●Java FX Mobileのデモンストレーション
携帯電話のプラットフォームとなるソフトウエア製品である。米Sun Microsystems社が買収した米SavaJe Technologies社の技術に基づく。Java SEの上に、携帯電話向けソフトウエア群を構築してあり、新機種開発やコンテンツ開発をJava言語に基づき行う。デモンストレーションに利用したコンテンツは米Yahoo!のもの。
[画像のクリックで拡大表示]

 米Sun Microsystems社は2007年5月8日(現地時間)、Java開発者会議JavaOneの基調講演の中で、携帯電話やデジタル家電の向けの新たなJava技術である「Java FX」を発表した(写真1)。

 Java FXは、Webコンテンツ、携帯電話、デジタル家電などのユーザー・インタフェースを構築するためのソフトウエア群。Java FXの最初のソフトウエア製品として、携帯電話向けソフトウエア製品であるJava FX Mobileと、コンテンツ開発用のスクリプト言語であるJava FX Scriptの2種類がある。今後、自動車向け、セットトップ・ボックス向けなど各種のソフトウエアを製品化する予定。それぞれGPL(GNU General Public Licence)によりオープンソースとして公開する。

性能とJava連携を重視した静的なスクリプト言語

 Java FX Scriptは、Webコンテンツや携帯電話向けコンテンツを共通のソフトウエアで開発可能とすることを狙った新たなスクリプト言語である。Java言語で開発されたGUIコンポーネント(Swing)や、各種Java APIを直接呼び出すことができる(写真2)。

 スクリプト言語の分野では、Perl、Python、Rubyのような動的な型付けの言語(動的言語)が主流となっている。しかし、Java FX Scriptは、実効性能とJava言語との連携を重視し、静的な型付けとした。ただ、Java言語よりプログラム記述量が少なくて済むようにし、またプログラム・コードの修正がただちに実行結果に反映する仕組みを提供し、開発作業を迅速に行えるよう工夫している。米Sunは、Java FX Scriptを「Webコンテンツ開発者にも使ってもらいたい」と説明する。

デスクトップと携帯電話でも共通のプラットフォームに

 Java FX Mobileは、Sunがこの2007年4月に買収を発表したSavaJe Technologies社のソフトウエア製品に基づいている。Java SE上に携帯電話機のためのソフトウエア群を構築した。

 携帯電話向けのソフトウエア開発分野はC/C++言語が主流となっている。ただ、携帯電話向けソフトウエアの開発規模は年々巨大化する傾向にあり、ソフトウエア製品スイートや、新たな開発方法論、フレームワークなどの必要性が議論されている。

 Java FX Mobileは、携帯電話機の開発に必要なソフトウエア一式を提供し、カスタマイズや追加開発をJava言語で行うことで、機器開発やサービス開発をより従来よりも迅速に行えるようにすることを狙う(写真3)。

「統合した一つのプラットフォーム」

 今回発表したJava FXは携帯電話や情報家電を対象としている。米Sunは、この分野では従来は組み込みJava技術である「Java ME」を推進してきた。一方、Java FXはデスクトップ向けJava技術であるJava SEに基づく点、コンテンツ開発者向けのスクリプト言語を提供する点など、従来の組み込みJava技術とは異なる性格を持つ。

 Java FXの位置づけについて、米Sun Microsystems社のSoftware部門Executive Vice President、Rich Green氏は「家電分野向けの、統合した一つのプラットフォーム」と説明する。PCで閲覧するWebコンテンツも、携帯電話向けコンテンツも、共通の開発環境で構築可能にすることを狙う。