Wicket?

kohata2005-08-16

Home | Apache Wicket

Wicket is a Java web application framework that takes simplicity, separation of concerns and ease of development to a whole new level. Wicket pages can be mocked up, previewed and later revised using standard WYSIWYG HTML design tools.
Dynamic content processing and form handling is all handled in Java code using a first-class component model backed by POJO data beans that can easily be persisted using your favourite technology.

Javaベースの Web アプリケーションフレームワークということです。
このネーミング、英語圏のひとたちには邪まなフレーバーを感じさせないのでしょうか?日本人的にはあまり気になりませんが。
(追記: wicketという単語があるのですね。そりゃそうかー。)
Webフレームワークというと、Strutsがブレイクして、JSFが出てきて、、
と、食傷気味あるいは、もうJSFでいいんじゃないの、といった感もあると思いますが、
あえてそこで勝負しようという骨のあるプロダクトです(そうなのか??)

ちょっと動かしたりサンプルコード読んだりして、触ってみました。
まず、私事で申し訳ないのですが、自分のテクの低下に驚きました。
完全に勘が鈍っていて理解するのが大変。
フレームワークの1つや2つ、サクサク使いこなせないと、とてもAgileとかいえませんね。
日々の鍛錬の重要性を痛感した次第です。
道具は常に磨いておかなければなりませんね。

さて、触ってみた所感ですが、
・UIの部品化、再利用性
・デザインとロジックの分離の徹底
EOD(Ease Of Development)
エンタープライズ
というあたりが肝みたいですね。

【UIの部品化、再利用性】
 - Swing ライクな GUIコンポーネントモデル
 - ビルトインコンポーネントが用意されています
 - HTMLもJavaクラスも一緒にパッケージング(これは変わってる。Strange)
【デザインとロジックの分離の徹底】
 - HTMLテンプレートにロジックが入ってしまうことを徹底的に排除
  多分、Tapestry に近いデザインだと思われます。(Tapestry良く知らないのですが。。)
EOD(Ease Of Development)】
 - プレゼンテーション、コントローラ層とモデル層とのやりとりは、POJOで。
 - 昨今のソフトウェアに顕著なXML設定ファイルの管理から解放される?
  確かに、xxxxx-config.xmlみたいなのは見当たらない。
エンタープライズ
 - セキュリティ、クラスタリング、国際化などの機能が装備されているようです

うーん。。誤解が多分にありそうですが、その辺を解き明かすためにも、もう少し深堀りしていこうと思います。