ひがやすを技術ブログ

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

ロッドジョンソンについてそろそろ一言言っておくか

Spring 3.0がいよいよ見えてきましたね。
http://springinpractice.wordpress.com/2008/12/02/new-stuff-in-spring-30/


新機能の中にSpring ELってのがあります。こんな感じ。


<bean class="mycompany.RewardsTestDatabase">
<property name="databaseName" value="#{systemProperties.databaseName}"/>
</bean>
Seasar2だとこんな感じ。

<component class="mycompany.RewardsTestDatabase">
<property name="databaseName">systemProperties.databaseName</property/>
</component>
ほとんど同じですね。
この設定ファイルで式言語を使えるようにするって話し、実は、ロッドジョンソン(Springのfounder)が日本に来たときに、対談してます。
Seasar2では、OGNL(式言語)を使って、設定ファイルをより柔軟に設定できるようにしてるんですよ。」って、私が言ったら、「式言語で書くのは、一種のロジックだから、それが設定ファイルに入るのは良くない」ってロッドが言ってたのになぁ。


autowire(Seasar2でいう自動バインディング)もそうですよ。「autowireはプロトタイプにはいいけど、実際のアプリケーションでは、そう単純には行かない」っていってたのに。
コンポーネントの自動登録も一緒。これは、対談ではなく、Springのフォーラムの話だけど、日本でSpringが見当たらないのはなぜって話が出てて、Seasar2っていう設定ファイルレスなコンテナがあることが原因かも、って話になったときに、「規約よりも設定だろうJK」っていってたのにー。


まぁ、ユーザのためなら、自分の主張を変えてでも、対応するってのは、いいことだと思います。実際は、主張は変えてなくて、「今でも設定ファイルがいいと思っているけど、自動登録が必要だというユーザのために用意した。選ぶのはユーザだ」って感じだと思うけど。
自分としてもSeasar2の方向性が間違ってなかったという確認ができて、良かったです。今となっては、SpringとSeasar2の違いは、大雑把に言うとHOT deployぐらいだしね。