Locked History Actions

GWT/GWTP

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-presentergwt-dispatchがあるが、GWTPはそれらの成果を取り込みつつ、さらに機能追加をしていく方向のようである。

現在実現されている機能としては以下のようなものがある。

  • MVPフレームワーク:昔ながらのMVCという三角形フレームワークではなく、それを修正したMVPというフレームワーク
  • コマンドパターンによるRPC:GWT純正のインターフェース方式によるRPC定義でなく、コマンドとその応答をオブジェクトにカプセル化し、それをサーバ側とやりとりする方式のRPC
  • EventBus:例えば、複数の画面が協調動作する際に、互いのメソッドを呼び出すのではなく、アプリ内でグローバルなイベントキューにその指示を行うイベントオブジェクトを投入するという方式。

  • その他

各機能

ここでは、Eclipse用GWTPプラグインの生成するコードをサンプルとして、GWTPの機能について調べる。

ステップバイステップ

TIPS