第11回オープンソーステクノロジー勉強会 −開催のご報告−

2008年1月15日(火)、国際大学グローコムにて、第11回「オープンソーステクノロジー勉強会」が開催され、約70名の方にお越しいただきました。

第一部では、アドビシステムズ(株)ダイナミックメディア エバンジェリスト 太田 禎一氏、アドビシステムズ(株)マーケティング本部 エンタープライズ&デベロッパーマーケティング部 部長 小島 英揮氏氏にご講演いただき、

第二部ではグリー株式会社の井口 健治から、GREEにおけるFlash Liteを利用した開発についてお話をさせていただきました。

(発表資料はfileこちら)。

また、懇親会も前回同様盛況となりました。ご参加いただいた皆様、誠にありがとうございました。

次回の勉強会は、3月下旬を予定しております。近日ご案内を掲示いたしますので、ぜひとも奮ってご参加ください。

講演資料(1) 「Web2.0 on デスクトップを実現するAdobe AIRとそれを支えるオープンソースの活動」

講演資料
近日公開予定です
  • Webの現在
    • Webアプリケーションの変わらぬ隆盛
    • AjaxをはじめとするWebページのリッチ化
    • WebAPIを公開し、外部開発者を取り入れるサービス戦略
    • SNSをはじめとするCGM(ユーザー投稿型)メディア
    • オープンな技術を核とした開発手法技術
  • Adobeの取り組み
    • 無償クライアントの活用
      • AdobeReaderとFlash Player
    • プラットフォーム中立
      • WIN/Mac/Linux/LAMP/Java/.NET
    • 標準技術の確立とサポート
      • 次世代のJavaScript:ECMAScript Edition4(AS3)、PDF仕様のAIM提出→ISO標準
    • オープンソースへの積極的な関与
      • Mozilla財団へTamarinVM寄贈
      • Spry Ajax/Flex3 SDK/Blaze DS
  • Flex/AIR周辺技術のオープン化
    • オープンソース化を計画けいかくしているもの
      • MXMLコンパイラ、デバッガなど各種ツール
    • クローズドソース(SDKに含まれる)
      • 他社のライブラリ、コアのライブラリ
    • クローズドソース(SDKに含まれない)
  • AIR開発にはFlexフレームワークがおススメ
    • AIRとはアプリケーションのランタイム(Java、.NETみたいなもの)
    • Flashベースのリッチインターネットアプリケーション(RIA)
      • FlashPlayer9以降が必要
      • 生産効率よくリッチなサイトが作れる
      • クライアントを新規にインストールする必要はない
  • Flexフレームワークにおける開発手法
    • ボタン自体はMXMLタグをコード記述するだけ
    • あるいはVBのようなドラッグ&ドロップ
    • ボタンの動作はAS3で記述する
    • コンポーネントのCSSスタイリング
    • データバインディングが20行程度のコードで実現可能
    • see also
  • Flex開発者コミュニティ
    • FlexUserGroup
    • 世界最大のユーザグループ(2,000人近く)
  • FlashPlayerの普及率
    • 95.3% FlashPlayer9
    • 99.5% FlashPlayer6
    • ワンクリックアップデート対応
  • AdobeAIR
    • Web標準のメディア・アプリケーション技術だけでマルチプラットフォーム対 応可能
    • 独自のウィンドウ形状を定義可能
      • WidgetManager、Kuler
    • 自由なI/Fで、自由自在な表現、演出が可能
    • ローカルの情報を瞬時に利用可能
    • 他デスクトップRIAランタイムとの比較
      • Web言語でロジックを作り、デザインはHTMLが「そのまま」利用可能
      • .netframework、Java(JWS)、YahooWidget
    • AIR MXML
    • Flashの中にHTML
  • AIR=Browser+FlashPlayer+AdpbeReader=Windows+Mac(+Linux・・・)
  • AIRアーキテクチャ
    • クロスOSアプリ、DOMアクセスとスクリプティングの統合
  • AIRアプリケーションの開発・配信フロー
    • 制作・開発するのはWeb標準のファイル(従来と同じ)
    • に加えてAIR用のアプリケーション記述XMLファイル
    • これらをAIRファイルにパッケージ化(実際はzipに固めて適切な場所に置く 感じ)
    • フルスクリーンで高繊細ビデオを配信可能(メディアに特に強い)
  • AIRアプリケーションの作り方
    • eclipseベースのIDE
  • サーバサイドSOA統合
    • サービスにAPI経由でアクセスすることでViewが切り離される
    • Viewをクライアント側に持ってくる(分散協調)
    • ユーザが直接Viewを操作
    • 非同期通信と、UserBility向上
    • Flexで使えるAS3用各種ライブラリは相性がいい
  • SOAに必要なもの
    • データを瞬時に処理できる強力なスクリプトエンジン
    • データ同期やプッシュなど高度なデータサービス
  • ローカルストレージ
    • ローカルマシンにデータを保持できる
    • アプリのインスタンスごとに暗号化されるストレージエリアもある
  • ベンチマーク
    • Bubblemark(DHTMLのテスト)
      • AIRの方がちょっとFlexよりいい・・・はず(ほとんど変わらない)
    • BlazeBench・・・AMF3バイナリ通信による高速通信=Ajax+JSONの4倍以上速い
  • AIRまとめ
    • ActionScript, ブラウザ, FlashPlayerがいっしょになったもの
    • ブラウザ上のアプリの制約を取り払った
    • windowsでもmacでもその他プラットフォームでも動作可能
    • H.264やmp3などメディアフォーマットの対応が豊富なのも特徴

講演資料(2) 「着せ替えるFlash Lite」

講演資料
filegree_study_20080115_flashlite.pdf
  • Flash Liteとは
    • 小型機器専用のFlashサブセット
  • GREEでの使い方
    • アバターとかクリノッペ(ペットサービス)で使っている
  • クリノッペでの使い方
    • 任意の着せ替えをした上で柔軟に動かしたい、という事からFlash Liteを選択
      • GIFに比べて、アニメーションの自由度や合成時の画質、インタラクティブ性 などで優れている
    • しかしFlashLiteは動的な外部リソースの読み込みができないなど制約が厳しい
      • クリノッペでは、PCでは一般的なクライアントサイドでのswf合成ではなく、 サーバサイドでのswf合成をした上で携帯電話に送信している
  • アバターでの使い方
    • パーツをそれぞれswfで用意しておいてswfベースで合成した上でGIFに変換し て出力
  • Flash Liteの制約
    • スクリプト言語はFlash4相当
    • loadMovie()の回数、起動方法
    • ファイルサイズ
    • 関数定義、配列定義ができない(擬似的に再現する必要がある)
    • シンボルのネスト構造が7階層を超えると表示されなくなる
  • 今後
    • 905i等VGA端末が普及して来ているが、GREEのアバターやクリノッペは内部が flashベースであることで解像度非依存を実現しているので、高解像度端末向け には高解像度画像を出力したりしたい