Deletions are marked like this. | Additions are marked like this. |
Line 7: | Line 7: |
GWTPはGWTに付加する形で利用するアプリケーションフレームワークである。特に「生のGWTではできないことができるようになる」というわけではなく、よりよいプログラミングスタイルをサポートするためのフレームワークというようだ。 | GWTPはGWTに付加する形で利用するアプリケーションフレームワークである。特に「生のGWTではできないことができるようになる」というわけではなく、よりよいプログラミングスタイルをサポートするためのフレームワークというようだ。この種のフレームワークが必要な理由は、当然ながらGWT上で複雑で巨大なアプリを作成する目的のためである。 |
Line 9: | Line 9: |
それゆえ、あらゆるテーマのものがいっしょくたに格納された形になっており、一度に理解するのは難しい。また、生のGWTによるプログラミングとは見た目にもかなり異なるものになるので、例えばEclipse上のGWTPプラグインの生成するサンプルコードは、GWTに精通した人でも理解は困難と思われる。 | それゆえ、あらゆるテーマのものがいっしょくたに格納された形になっており、一度に理解するのは難しい。また、生のGWTによるコードとは見た目にも異なるものになるので、例えばEclipse上のGWTPプラグインの生成するサンプルコードは、GWTに精通した人でも理解は困難と思われる。 |
Line 13: | Line 13: |
現在実現されている機能は以下のとおり |
現在実現されている機能としては以下のようなものがある。 * MVPフレームワーク:昔ながらのMVCという三角形フレームワークではなく、それを修正したMVPというフレームワーク * コマンドパターンによるRPC:GWT純正のインターフェース方式によるRPC定義でなく、コマンドとその応答をオブジェクトにカプセル化し、それをサーバ側とやりとりする方式のRPC * EventBus:例えば、複数の画面が協調動作する際に、互いのメソッドを呼び出すのではなく、アプリ内でグローバルなイベントキューにその指示を行うイベントオブジェクトを投入するという方式。 * |
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:例えば、複数の画面が協調動作する際に、互いのメソッドを呼び出すのではなく、アプリ内でグローバルなイベントキューにその指示を行うイベントオブジェクトを投入するという方式。