Strutsをつかってみた
ずっとよく聞くStrutsとは何か、ちとやってみた。なんか宣伝文句が多くてよくわからないものだったが、どうやらWebアプリケーションを開発するためのフレームワークであった。何ができるかというと、
- 画面遷移の管理
- カスタムタグライブラリの提供
- Java Beanと入力フォームとの関連付け +その 整合性(validation)
- タイル
こんなとこか。
フレームワークとは、簡単に言ってしまえば「いつも書いているアノ処理」を自動化してくれるものだ。だからフレームワークを使ったほうが便利、簡単、安全(たくさんの人が使っているのでバグが少ないという意味)というのがうたい文句なのだが、個人的にはどうもフレームワークというのが好きになれない。というのは、
- 最新のJDKやサーブレットコンテナ(Tomcatとか)に、フレームワークの更新が追いつけない。ヴァージョン互換が保てない。
- 更新が早い。すぐにdeprecatedになってしまう。
- コンフィグレーションが多い。設定するところが多い。
- フレームワークが仕事をしすぎる。いくつかの機能についてはフレームワークから外れたいことをしたくても、外れたことがしにくい/できない。
Strutsの場合は、かなりMajorなこともあってか、上記のようなリスクはかなり小さいと思う。しかし、Javartaプロジェクトのひとつだけあってか更新が早すぎる(アンチパターン「絶え間なき陳腐化」…)。コンフィグレーションが多いのも特徴か。しかし、これを使うとMVCが整理できていいかもしれない。しかしServletは決してMVCの構造を持っていないと思うが。