Java Cloud Meeting in Tokyo 2010に行ってきた

1日遅れだけど、レポートを書く。

Seasar3がやってくる(ひがさん)

Force.comがVMWareと組んだ。
Google App Engine for Businessも発表になった。
2011年あたりからエンタープライズクラウド界隈も活性化するだろう。
だが…どちらもSpringベースである。
SeasarDIContainerとして厳しい位置づけに立たされた。
どうする、Seasar
1.どうもしない
2.Seasar2.5の開発(下位互換あり)
3.Seasar3の開発(下位互換なし)
ひがさんの答えは…!
4.Springと結婚する(ピッカアァァ*1

結婚、といっても合併するとかそういう話ではなく、Spring上で動く何かを作るという話。
とりあえず今のところはHotReloading機能を追加することを考えている模様。
その他はまだ未定。
そもそも、Springとの結婚話自体未定。

Google Web Toolkitのすすめ(kaisehさん)

JavaソースをJavascriptコンパイル!という夢のような?プロダクト。
メリットをつらつら挙げていくとだいたい下のような感じ。

  • Javaの主要なAPIをエミュレートできる
    • 何でもJavascriptコンパイルできるわけではない。これでハマっているうちに長い時間が過ぎ去るような気がする…
  • 型チェックもあるし、大規模開発向け
  • クロスブラウザ対応
    • UserAgentを見て最適なコードを生成してくれる
  • 圧縮・難読化やコード分割によるパフォーマンス向上
  • クライアント側とサーバ側を同じコードで動かせる
    • バリデーションロジック等で同じコードを書かなければならない場合に便利そう
  • ロジックをクライアント側で実行することによって、クラウドの課金を軽減する
  • 完成度の高いEclipseプラグインがある(らしい)
  • 高機能なUIコンポーネントが用意されている
    • しかし結局お客さんの要望で手が入りまくる…と思う
  • MapやチャートなどのGoogleAPIと連携できる
  • Ajaxだが戻るボタン対応
    • 戻るボタンでどこまで戻るかは自分で制御しなければならない

プロジェクト徹底攻略!Seasar2徹底入門番外編(たけぞうさん

仕事で使えそうなSeasarファミリーのプロダクトを紹介。
以下は自分が興味を持ったもののみ書く。

  • Mayaa
    • プレーンHTMLをテンプレートにできるのが好き
    • Rhinoで好き放題できるのが好き
      • Eclipse上でダイアログボックスだって出せるぜ
    • でもやはりJSPと比べて生産性は低いらしい
      • デザイナーとやり取りしながら開発しないといけないような場合には有効
  • Doma
    • 正直、レガシーな方々とORMというのは非常に相性が悪いと思う
    • 2WaySQLはそんな現場にぴったり(泣)
      • そんな現場でなくても、複雑な業務とORMの相性はあまりよくないのかもしれない
    • Seasar2非依存なのもいいですね
  • S2Chaching
    • メソッドの戻り値をアノテーションでキャッシングできるというのが新鮮だった
    • でも使いこなすのは難しいらしい
  • Fisshplate
    • そうだよね、あるべきだよね、これは
    • Excel作る時は使おう

GAEプラットフォームの勘所(shin1ogawaさん)

GAEに関する全般的な説明。
駆け足だったがまとまっていて、これから始める際に大いに役立つと思う。
内容は入門サイトを10個ぐらい巡回すれば網羅できると思うので省略。

GoogleAppEngineの本質とSlim3による進化したサクサク開発(ひがさん)

…のはずだったのだが、クラウドに対する誤解が多いと感じたひがさんにより急きょ内容が変更に。
Slim3の話はほとんど出てこなかった。

  • クラウドの本質
    • 一般的に言われているクラウドの本質 = スケールアウト
      • だがそれなら多くの人にとってクラウドなど必要ない
    • ひがさんの思うクラウドの本質 = 規模の経済によるコストダウン
      • これを可能にするために諸々の制約がある
  • JavaPythonどっちがいい?
    • 素の状態で、SpinUpはPythonの方が早い
    • 素の状態で、RuntimeはJavaの方が早い
      • ただ、素の状態で使うことはそんなにないでしょう?
    • フレームワークを使った場合、Javaは圧倒的に遅い
      • でもそれはJDO/JPAの初期化が遅いせい
    • Slim3を使えばいいじゃない!

*1:レベルE3巻参照