1. モジュールのダウンロードと展開
モジュールの容量は各プラットフォームごとに異なるが、それぞれ約19MB(Windows版)、約22MB(Mac版)、約25MB(Linux版)となっていて、いずれもZIPなどの圧縮形式になっている。Windows版の場合、展開すると約35MBになる。ディスクの空き容量は十分に確保しておいていただきたい。
2. アプリケーションの雛形(ひながた)を生成
いきなりソースコードを書き始めるのが難しい場合は、コマンドラインツールを実行することにより、雛形となるソースコードを生成する。これにより、HelloWorldアプリケーションを実行するのに必要なディレクトリ構造とソースコードが一通り生成される。
同じコマンドのオプションでEclipseプロジェクトを生成することもできるので、Eclipseに慣れている開発者はこちらを実行したほうが良いかもしれない。
3. 国際化(日本語)対応用のプロパティファイルを生成
ソースコードに日本語が含まれている場合、文字コードがUTF-8でないとWebコンテンツが文字化けすることがある。そこで、別のコマンドラインツールで国際化(日本語)対応用のプロパティファイルを生成しておくと、日本語に対応したアプリケーションを構築しやすくなる。
メッセージの出力手順がいくらか面倒になってしまうのは否めないが、これから構築するAjaxアプリケーションを世界に発信したいというのであれば、国際化対応も考慮しておいたほうが良いだろう。
4. JavaソースコードやCSSを作成
ここからが実際のアプリケーション構築作業となる。
Webコンテンツを構成する要素はJavaクラスのウィジェットとして定義されており(Widgets Gallery参照)、これをSwingアプリケーションと似た要領で組み立てることで画面全体を形づくる。そしてボタンをクリックされたときにはどうする、というイベントドリブン方式でその他の処理を組み込んでいく。
CSSは画面のデザインを定義する役割を担っており、Javaプログラム内でウィジェットにどのスタイルシート(CSS定義)を当てはめるかを決めることができる。そのため、入力データのエラーを検出したときにはこのスタイルシート、といった具合に、処理の内容とスタイルシートとの関連を事前に決めておくと作業分担がしやすいだろう。
5. デバッグ(実行)とテスト
デバッグ時の実行モードとして、hosted modeとweb modeが用意されている。前者はGWT内でアプリケーションサーバを起動し、動的にJavaScriptを生成するモードで、後者は事前のコンパイルでデプロイ可能なJavaScriptなどを生成しておくモードだ。
また、GWTのコマンドによりJUnitのテストケースの雛形を生成することもできる。これにもEclipseプロジェクトを生成するオプションが存在する。ただしJUnitのJARファイルが別途必要となる。
以上がGWTによるアプリケーション構築の全体的な流れとなるが、ご理解いただけただろうか。次回は、実際にアプリケーションの雛形を生成し、それを実行する方法を紹介する。コマンド1つで実行可能な雛形が得られるのは、開発者にとって有難いに違いない。