竹添 直樹(たけぞえ なおき)

 NTTデータ先端技術勤務。国産のオープンソースプロジェクトProject Amaterasのオーナーであり,SeasarプロジェクトやClick Frameworkでもコミッタを務めている。著書に「入門Wiki」「Eclipseプラグイン開発徹底攻略」(いずれも毎日コミュニケーションズ発行)などがある。


木村 真幸(きむら まさゆき)

 株式会社DTS ネットワーク事業本部 プロジェクトマネージャ。Javaを中心にフレームワーク開発や開発プロセス定義など幅広く活躍中。StrutsIDEコミッタ。著書「まるごとEclipse! Vol.1」(発行:インプレスコミュニケーションズ)。

 Javaは現在,Webアプリケーション開発においてサーバーサイドの実装言語として広く用いられています。とはいえ,クライアント開発ができないわけではありません。従来より,Webブラウザ内で動作するAppletや,Java Web Startでクライアント・アプリケーションを配布することが可能でした。しかし,動作の緩慢さやネイティブ・アプリケーションとの外観や操作性の違いなどから,アプリケーションの配布スタイルとして広く普及するまでには至りませんでした。

 近年リッチクライアント・アプリケーションに注目が集まっており,Javaもこれまでのサーバー領域だけでなく,クライアントサイドへの取り組みが強化されてきています。そうした中で,JSR-296としてSwing向けのフレームワークの標準化が行われています。

 これまでJavaの土俵であったWebアプリケーションの分野では,StrutsやJSF,Tapestry,WebWorkなど,まさにフレームワーク百花繚乱とも言える状況でしたが,ここに来てようやくJavaによるクライアント・アプリケーション向けのフレームワークが登場しようとしているのです。

 本稿では,JSR-296のスペックリードであるHans Muller氏によってjava.netで公開されているプロトタイプ版をもとに,Swing Application Frameworkの機能について紹介したいと思います。なお,本稿の内容は,執筆時点の最新版であるSwing Application Framework 0.21に基づいていますので,JSR-296の最終的な仕様とは異なる可能性がある点をご了承ください。

開発環境の構築

 java.netのプロジェクトサイトからは,ソース・ディストリビューション,バイナリ・ディストリビューション(JARファイル),Javadocをダウンロードできます。ソース・ディストリビューションは,NetBeansのプロジェクト形式になっており,フレームワークを使用したアプリケーションのサンプルも多数含まれていますので,まずはNetBeansにインポートしてサンプルの動作を確認してみるとよいでしょう。NetBeansには,Swing用の強力なGUIビルダが付属していますので,Swingアプリケーションを開発するのにも最適です。

 ここではSwing Application Frameworkのソース・ディストリビューションをNetBeans 5.5にインポートし,サンプルを動作させるまでの手順を解説します。

◆NetBeansへのインポート

 まずは,https://appframework.dev.java.net/からAppFramework-0.21-src.zipをダウンロードし,適当な場所に展開します。

図1●ソース・ディストリビューションのダウンロード
図1●ソース・ディストリビューションのダウンロード
[画像のクリックで拡大表示]

 次にNetBeansのメニューから[ファイル]→[プロジェクトを開く]を選択します。プロジェクトを選択するためのダイアログが開きますので,解凍したフォルダを選択して[プロジェクトフォルダを開く]ボタンをクリックします。

図2●NetBeansへのインポート
図2●NetBeansへのインポート
[画像のクリックで拡大表示]

 インポート後の様子は以下のようになります。

図3●インポート後の様子
図3●インポート後の様子

◆サンプルを動かしてみよう

 examplesパッケージ配下には多数のサンプルが収録されていますので,まずはこれを動作させてみましょう。サンプルを実行するには,実行したいクラスを選択し,右クリックから「ファイルを実行」を選択します。

図4●サンプルの実行
図4●サンプルの実行

 プロジェクトには多数のサンプルが含まれているので,フレームワーク利用時に参考にするとよいでしょう。