「新フレームワークSlim3をまもなく公開する」---ひがやすを氏は2009年3月14日に行われたSeasar Conference 2009 whiteで,同氏が開発中の新フレームワークSlim3のデモを披露した。
Slim3は,オープンソースのJ2EE(Java2 Enterprise Edition)フレームワークであるSeasar2から,アジャイル開発を支援する機能を抽出しスリム化したもの。Seasar2はDI(Dipendency Inject)コンテナとして開発が始まり,その後ホット・デプロイなどアジャイル開発を支援する機能が追加されてきた。Slim3では機能を絞ることで学習を容易にする。またDIコンテナとしての機能はSpringを利用,Webフレームワークとしての機能はStrutsすることで,StrutsとSpringのユーザーが移行しやすくする。規約やアノテーションを使い,プログラムを簡潔に記述できることを目指すとともに,設定ファイルで記述しなければならない部分を極力削減することを狙う。一方で学習コストを下げるために規約やアノテーションも最小限に留めたいとしている。
ひが氏は,Seasar2は今後,細かなブラッシュアップは行うが,大きな機能追加は施さない方針を明らかにしている。今後の新規機能追加はSlim3が対象になる。また,Slim3のドキュメントは英語を優先し,英語圏での普及を狙う(関連記事「世界への普及目指す」---ひがやすを氏が新フレームワーク「Slim」を発表)。
デモでは,「http://localhost:8080/slim3-struts-tutorial/hello/index」というURLにアクセスし,index.jspの内容である「Hello World」を表示させるまでの手順などを通じて,Slim3を紹介した。
Slim3では命名規約により,例えばhelloというパスに対しては,最初を大文字にしたHelloActionクラスが対応付けられる。
HelloAction(抜粋)
public class HelloAction{
@Execute(validate = false)
public ActionForward index() {
return new ActionForward("index.jsp");
}
}
index.jsp
Hellow World
といった記述により,index.jspの内容を返す。@Executeはexecuteメソッドを定義するアノテーションで,validate = falseは入力値を評価しないことを示している。
デモでは,コードが何も存在しない状況で「http://localhost:8080/slim3-struts-tutorial/hello/index」にアクセスするところから始め,「メソッドが存在しない」などのエラー・メッセージを見ながらコーディングを行う様子を見せた。「Slim3ではエラー・メッセージをなるべく親切に表示し,修正すべき内容をプログラマが理解して開発できるようにする」(ひが氏)という。
Seasar Conference 2009 Whiteでは,このほかにもSeasarプロジェクトで開発されている多くのオープンソース・ソフトウエアに関する発表が行われた。発表資料はカンファレンスの公式サイトで,順次ダウンロード可能になる予定である。
◎関連リンク
◆Slim3公式サイト
◆Seasar Conference 2009 White