ひがやすを技術ブログ

電通国際情報サービスのプログラマ

SAStrutsとS2JDBCを作ったわけ

Seasar 2.4 のころは Teeda + S2Dao で売っていたが、使い続けている内に様々な問題が出てきた。サクサク感が出せてないなぁ、とひがさんが感じた、というのが一番の問題、と俺は受け取った。

かなり間違って受け取ってるなぁ。確かに、オラクルでS2Daoを使うと、データベースのメタデータを毎回とりに行く部分が遅いので、HOT deployがさくさく行かないという話はしたけど。


TeedaS2Daoは、基本的に規約ベースのフレームワークです。規約を知っていれば、本当にさくさく開発できます。でも、規約ベースなので、規約を知らないと、何にもできなくなっちゃう。この辺が、大規模開発には向かないところ。
小規模で、みんなで気楽に質問し合えるような環境だと、知らないときは、誰かが答えてくれるんでいいんだけどね。


SAStrutsS2JDBCは、大規模案件にも耐えられるように最初から設計されています。

  • Less is more(磨かれた少数の機能で多くの効果を得る)をコンセプトにしているので機能が少なく、学習コストが低い。
  • CoCは、規約を知らないと、何が起こっているのか、まったく理解できなかったりするけど、そうはならないように、最小限のアノテーションなどで、ソースコード上にヒントを残している。
  • エラーのメッセージを見れば、何をすれば良いのかわかるようになっている。
  • マネージャが開発者を集めやすいように、Strutsをベースにしている。
  • 設定ファイル地獄に陥ることがない。でも、CoCではない。アノテーション地獄でもない。Less is moreで意図的に割り切った機能にしているので、たくさん設定する必要がない。


SAStrutsS2JDBCは、大規模案件に耐えられるように作ったのです。大事なことなので、二度言っておきますよ。