Seasar Conference 2009 Autumn

9月12日に開催されたSeasar Conferenceの感想。

yui-frameworks

Flex User Groupではおなじみのお2人、有川さんと舩倉さんによるyui-frameworksの解説が2枠通しでありました。前半はyui-frameworksに関する基本事項の説明、後半はエンタープライズアプリケーションを作る上でのポイントと注意点でした。具体的な内容についてはいずれレジュメが公開されると思いますので、ここでは私の視点から簡単に整理します。


yui-frameworkとはデザイナとデベロッパの協業をテーマにデザインとロジックの分離を実現する軽量なフレームワークです。通常目にするFlexサンプルコードの多くは、View部品であるMXMLイベントハンドラを記述していますが、yui-frameworkを使うことでイベントハンドラを別ファイルであるActionに記述することができるようになります。この時、イベントに対するイベントハンドラバインディング命名規約に従うことでyui-frameworkが自動的に行ってくれます(yui-frameworkの機能その1)。イベント処理の結果をViewに反映させる際には、ActionはViewを直接触らず、Helperを経由する必要があります。ActionにおけるHelperの参照、HelperにおけるViewの参照はフレームワークによってDIされることになります(yui-frameworkの機能その2)。


イベントハンドラを記述する時の命名規約は以下の通り。

function {component.id}{event.type}Handler(event:XxxEvent):void { ... };

例えば、id="button1"がクリックされたイベントのハンドラであれば、

function button1ClickHandler(event:MouseEvent):void {...};

この分かりやすさがyui-frameworkの魅力でしょう。若干注意が必要なのは、Flexの特性上依存関係を解決するためのファイルがもう一つ必要になるという点でしょうか。


yui-frameworkに続いて、サーバとの連携部分をサポートするyui-serviceの説明と、実際にサーバと連携するデモの紹介がありました。発表中でも触れられていましたが、yui-frameworksを使ったサーバ連携のサンプルが公開されるのは初めてだと思います。


後半のエンタープライズアプリケーション開発では、クライアントとサーバの関係を中心に解説が行われ、以下のようにまとめられました。

  • サービスとモデル設計が重要
  • 複雑なコンポーネントははまりやすいので、シンプルにするように再考

RIAの場合には、クライアントとサーバの両方にデータモデルが作られる分、両者の関係は従来より複雑になってしまいますが、その関係を解決する上ではクライアント主導の方が望ましいという方向で説明がされていました。また、RIAというと何かとUI部品が複雑化しがちですが、カスタムコンポーネントを作る時にはきちんと理解している人が設計しないと、メモリリークなどを含めて結構危ないという点は重要な注意事項だと思います。


最後に発表の形態に関して、片方が説明しつつ、もう片方が適宜ツッコミを入れるというものでしたが、意外と分かりやすかったように感じています。


関連サイト

BigTable

ひがさんによるBigTableの使い方です。200人の部屋に椅子を後ろに並べるほどの盛況ぶりでした。where条件指定や、JOINなどに関して制限のあるBigTableとどのようにつきあうかという内容で、基本的には、RDBにおけるSQLの実行計画を実際に実装するような感じと考えれば良いのではないでしょうか。既存技術を考え方を含めて理解した上で、それを応用していくというスタイルからは学ぶことが多いです。なお、Entity Groupに関する説明は時間の都合で割愛となりました。

Blogopolisの裏側

TopHatenerでおなじみの浜本さんによる、Blogopolisの解説でした。適切な問題設定とそれを解決するロジックに関する知識、そしてそれを実現するインフラがそろった時のパワーはもの凄いものがあるということがよく分かります。フレームワークの題目として、「開発者をビジネスロジックに専念させる」というものがありますが、そのお手本のような内容と言えるのではないでしょうか。私自身は完全にフレームワーク/開発手法屋で、特定領域におけるロジックに関する専門知識がある訳ではないので、こういう発表を聞いてしまうと強いあこがれをかき立てられてしまいます。

最後に

カンファレンスと名のつくものはたくさんありますが、個人的にはこのSeasar Conferenceが一番元気をくれるような気がしています。発表者の皆様、運営されている皆様、どうもありがとうございました。

Seasar Conference 2009 Autumn - 9/12(SAT), Tokyo