:::: MENU ::::

[java][seasar2]CoCフレームワークTeedaを使って開発効率アップ〜その1〜


こんにちは、sovaのはき猫です。
sovaでは現在、2つのプロジェクトで開発を行っています。

  • クローズドなコミュニケーションアプリ「circle board」
  • インディーズ音楽業界を活性化させる「stecker」

わたくし、はき猫は主にフロントエンドとバックエンドのアプリケーション開発を担当しています。これらのプロジェクトではJavaのフレームワーク「seasar2」を使って開発を行っています。seasar2プロジェクトには様々なフレームワークがありますが、sovaではプレゼンテーション層で「Teeda」、永続化層ではhibernateをseasar2に対応させた「S2hibernate」を使っています。
今回はプレゼンテーション層の「Teeda」についてご紹介したいと思います。

みなさん、seasar2はご存知でしょうか?

seasar2は国産のDIフレームワークとしてとても有名なのでご存知の方も多いのではないかと思います。seasar2のプレゼンテーション層フレームワークとしては「SAStruts」が有名ですね。
SAStrutsはStrutsをseasar2に対応させているフレームワークなので、MVCで開発を行うことになります。
それに対してTeedaはMVCではなく、JSF1.1の実装となっています。これより、画面描画のhtml/javascript/cssファイルとビジネスロジックを完全に分離することを実現しています。(※)
また、効率よく開発出来るフレームワークとして有名なRuby On Railsと同じ、Convention over Configuration(CoC:設定より規約)に乗っ取って作られいる為、ある程度Teedaのルールさえ覚えてしまえば、とても効率よく開発を進めることが可能になります。
このように紹介すると「それだったらRailsを使えばいいじゃん」と思う方もいるかもしれません。
しかしRubyが流行っているとはいえ、エンタープライズな環境においてはやはり未だに「Java」が大きな地位を占めており、開発者もJavaを使っている方が多いのではないでしょうか。このことからもJavaで効率よく開発するフレームワークはまだまだニーズがあるかと思います。
また、seasar2を使うメリットとしては国産のフレームワークなので、日本語のドキュメントが豊富です。
Teedaについても何か困ったことがあってもググると大抵のことは解決出来ます。
また、どうしてもわからないことがあればseasar2のメーリングリスト宛に質問をすれば解決策を知っている方が答えてくれたりします。(いつも貴重なお時間を使って回答して頂いて感謝しております)
※JSPのようにhtml内にカスタムタグでロジックを埋め込むようなこともありません。完全に素のhtmlファイルです。

どうでしょう、Teedaに興味が湧いて来ましたか?

先に述べた通り、詳しくはseasar2本家のサイトを見れば大抵のことがわかります。
本家のサイトと内容重複する点も多々出て来ると思いますが、実際にTeedaを使っているユーザとして当ブログでもTeedaについて紹介したいと思います。

では、次回以降を楽しみにしてて下さい。


So, what do you think ?