Seasar2でサクサクか炎上か
可燃プロジェクトに飛び込むことになりました。下記のような炎上する要素満載。
最初このエントリを見たとき、4/1だったこともあり、一瞬ネタかなと思ったんですが、その後に、SAStrutsとS2JDBCに対する具体的な質問がいくつもあり、私のほうもできる限り質問に答えました。
その後、どうなったのか気がかりだったんですが、今見たらこんな書き込みが
開発メンバからは、簡単で楽でいい! 1 機能が 1 時間で出来ました!(たぶん出来てはない) ってみんな喜んでくれてました。良かったです。でも、問題が出るのはたぶんこれからです。
今後何らかの問題が起こる可能性があるといっても、あれから2週間ちょっとで、プロジェクトを立て直したってのは驚き。
これは、Seasar2に関係なく、id:cypher256さんのスキルの高さがあるからですね。おいらでも、こんな短期間で立て直せる気があまりしない(笑)。ちなみにcypher256さんは、みなさんもお世話になっていると思う「Pleiades」の人です。
また、SAStrutsとS2JDBCを使う際のノウハウがたくさん公開されています。
- ネストしたプロパティで入力チェック
- 画面部品
- 認証
- SQL 発行
- アクションの粒度
- エンティティの自動生成
- JSP2.0 ファンクション
- 拡張性
- フォームとアクションの標準構造
- JavaBeans プロパティ命名ルール
- セッション管理
- フォームクラスをアクションとは別にする 5 つの理由
- SAStruts を選んだ 5 つの理由 - アーキテクチャ
- SAStruts 採用説得パターン
特にアクションの粒度、フォームとアクションの標準構造、セッション管理、フォームクラスをアクションとは別にする 5 つの理由は、実案件で迷う部分だと思うので、とても参考になるんじゃないかと思います。
最後のお客様とのやり取りは、ちょっと笑った。
- お客様:え? Struts じゃないんですか? Seasar って書いてますけど。。。
- 私:え? (なんか雰囲気が変だ) えーと、Struts ですよ。
- お客様:私は Seasar か Struts かという話を聞いていて、開発者が集めやすい Struts に決定したと聞きました。
- 私:あ、そういうことですね。使うのは Struts です。で、Seasar ですが、Seasar と言っても非常にたくさんのフレームワークがあります。ここでは一旦 Seasar は忘れてください。
- お客様:はい?
- 私:Seasar に SAStruts という Struts の非常に薄いラッパーがあります。おっしゃるとおり、Struts は枯れているので開発者も集めやすいです。かつ SAStruts には生産性が高くなるように便利な機能が搭載されています。なので今回のフレームワークは Struts であり SAStruts でもあります。
- お客様:あ、そういうことですか。良かったです。安心しました。
ちょっとずるいように見えても、お客様と開発者がハッピーになれるような開発ができるなら、それでいいんです。採用するための障壁が低いということはとても重要なことだから。