前半の Web アプリ開発パネルディスカッションについて、ざっとメモします。
誰の発言かは気にせずに。
「DBアクセスはどうしている?」
- SQL vs Active Record vs Data Mapper
- 最後は SQL をかく部分が残るという点では全員が同意。RDB はなくならない。
# 私見:日本のシステムは O->R ではなく、R->O も無視できません。その場合 Hibernate は不向きです。
「言語内DSLの有効性について」
- 1行のコードが1000行の能力をもつようにする。
- SQL も DSL の一種。
- 外部DSLより言語内DSLの方がいいのではないか。
# 私見:言語内DSLは魅力ですが、使える人は限られるでしょうね。
「みんな Ruby にいくべき?」
- Rails のいいところは、こういう書き方をすれば楽になるよという開発を示したこと。
- Rails が強いところには Rails を使えばいい。そうでない分野に使う必要はない。
「エンタープライズRails開発は可能?」
- 要素技術としては可能と思うが、今は Java が有利なことはみとめる。
- 逆に、これだったら(Java 使わなくても)Rails でいいよね、という分野はまだある。
「Java から Ruby に行くための問題点として、学習コストはどうなの?」
- 長年 Java を使っていても、まだ学ぶべきところはある。
- Java 6 ユーザはほとんどいないのが現状。(会場で挙手を求めるが、ほんの数名程度)つまり、Java も発展途上。
- 多数の言語を学ぶのもいいが、一つの言語をとことんやっていくことも大切。
- Ruby の学習は難しくない。最近はいろいろな教育コースもでている。Ruby 検定も登場している。
「サラリーマンプログラマ(その意味についてはここでは不問とします)には何がいい?」
- Seasar2 は、Java 3 ヶ月経験者に 2 日教えれば、簡単な Web アプリはつくれるという実体験があります。
- ホビープログラマには Rails はいいが、運用に入ると大変。具体的には、サーバ設定など。
- Spring は上級者向けかな... ビジネスオブジェクトを、がしっとつくる人は勉強してほしい。
「(会場より)JBOSS Seam を忘れていないか?」
- Seam は Web Beans の最初の標準実装で期待もあるだろうが、よくもわるくも Java っぽい。
- いろいろな条件に対応しようとしている分、複雑では?初心者には難しいのでは。学習コスト高い。
- Seasar2 より Seam の方ができることは多いのだろう。しかし短期間向きではない?
- Seamはステートフル/レスを扱えるが Rails は基本的にステートレス。方向性が違う。
- Seamは標準という意味で重要。期待もてる。
- Seam の頑固さ(ステートフル)、Rails(ステートレス)の頑固さは同じもののように感じられる。
- Webらしさを追求するならステートレス。RESTful Webサービスとか。そこにステートフルを持ち込むのは直感的に危険さを感じている。
「(会場より)Ajax は?」
- あり。リッチクライアントのひとつ。クライアントがステートフルになる。サーバはステートレス。
- RIA としての Ajax と、非同期実行的な Ajax がある。非同期は奥深い。