GWTP
参考
概要
GWTPはGWTに付加する形で利用するアプリケーションフレームワークである。特に「生のGWTではできないことができるようになる」というわけではなく、よりよいプログラミングスタイルをサポートするためのフレームワークということ。この種のフレームワークが必要な理由は、当然ながらGWT上で複雑で巨大なアプリを作成する目的のためである。
それゆえ、あらゆるテーマのものがいっしょくたに格納された形になっており、一度に理解するのは難しい。また、生のGWTによるコードとは見た目にも異なるものになるので、例えばEclipse上のGWTPプラグインの生成するサンプルコードは、GWTに精通した人でも理解は困難と思われる。
GWTP作成の発端となっているのは、2009年のGoogle IOのセッションGoogle Web Toolkit Architecture: Best Practices For Architecting Your GWT Appであるようだ。このセッションに影響に受けたフレームワークプロジェクトとして、gwt-presenterやgwt-dispatchがあるが、GWTPはそれらの成果を取り込みつつ、さらに機能追加をしていく方向のようである。
現在実現されている機能としては以下のようなものがある。
- MVPフレームワーク:昔ながらのMVCという三角形フレームワークではなく、それを修正したMVPというフレームワーク
- コマンドパターンによるRPC:GWT純正のインターフェース方式によるRPC定義でなく、コマンドとその応答をオブジェクトにカプセル化し、それをサーバ側とやりとりする方式のRPC
EventBus:例えば、複数の画面が協調動作する際に、互いのメソッドを呼び出すのではなく、アプリ内でグローバルなイベントキューにその指示を行うイベントオブジェクトを投入するという方式。
- その他
各機能
ここでは、Eclipse用GWTPプラグインの生成するコードをサンプルとして、GWTPの機能について調べる。
ステップバイステップ