2009年3月29日日曜日

Wicketいい感じ

最近開発を始めたシステムでWicketというJavaのフレームワークを使用。
会社の人に紹介してもらってはじめて使い始めたのだけど、今のところかなりいい感じ。

Apache Wicket
http://wicket.apache.org/

日本Wicketユーザーグループ
http://www.wicket-ja.org/

このフレームワークの思想は、「サーバサイドJavaプログラムにもオブジェクト指向を」というもの。

JavaのWebアプリのフレームワークといえば代表的なものはやはりStruts。
そしてStrutsはServletの上で動いていて、ServletはHTTPの仕様に基づいた動作をするわけです。

Javaを使っている = オブジェクト指向 というイメージがあるけれど、よく考えてみると
Struts(Servlet)の動作というのは基本的に手続き型。
Requestというデータを受け取ったServletが処理を行って結果を返しておしまいというもの。
HTTPの上で動くのでステートレス。
でもオブジェクト指向の考え方はデータ(プロパティ)と処理(メソッド)を持ったオブジェクトが
連携して処理を行うというもの。もちろんオブジェクトは状態を持っている = ステートフル。

JavaのスタンドアロンのプログラムやGUIプログラムはオブジェクト指向本来のつくりをしているけれど、
Webアプリについてはこれまで基本的に手続き型のつくりをされてきている。
MVC タイプ2というものがあるけれど、これは本来MVCというもともとのオブジェクト指向のものを
Webアプリに適用できる形にしたものだそうな。

WicketはWebアプリのJavaでも本来のオブジェクト指向のプログラミングを、Javaの面白さを
取り戻そうということで作られている。
今までのフレームワークとは全く構造が違って、画面上のそれぞれのパーツ = Javaのコンポーネント となっていて、
つくっていてオブジェクトを組み合わせていく感じがとても面白い。

まだまだ使い始めたばかりなので悪いところが見えていないが、とてもこの先が楽しみ。

0 件のコメント: