2010年4月8日木曜日

Build Once, Deploy to Many

Adobe Flash Platformのマルチプラットフォーム戦略は、Flash PlayerやAdobe AIRといったランタイム(実行環境)がWindows、Mac OS、Linuxだけでなく、SmartPhoneやNetBook向けのOSに対応することで、更に強力でユニークなものになりつつあります。

特に、CS5からサポートされるPackager for iPhoneのようなPackagerシリーズが今後も各モバイル向けOS用に展開されてくれば、アプリケーションのコードを共有して書き出し先を複数指定するだけでよくなります。

これをデモで見せているのが、Adobe AIRチームのChristian Cantrellです。彼は自身のブログで同じオセロゲームを以下の環境で動作させるデモを紹介しています。
  • iPad
  • iPhone/iPod touch
  • Motorola Droid
  • Desktop (Mac, Windows, and Linux)
  • Browser



開発方法は、Flash Builder 4上にAS3のベースプロジェクトを作成し、ここにアプリケーション本体を記述します。そして、各環境用のラッパープロジェクトを作成し、ベースプロジェクトをプロジェクト参照するというスタイルです。

現時点で最新のFlash Builder 4では、この方法がベストでしょう。今後は、新たに「モバイルOSプロジェクト」という新規プロジェクトメニューが追加され、エクスポート設定で書き出し先をiPad、Android、PalmOSなどと指定できるようになるかもしれません。
つまり、一つのモバイル用プロジェクトから各Packagerを呼び出してあげるという方法です。

モバイルOS別にFlash PlayerでサポートされるAPIが異なるような場合(例えば、新しく標高センサーが出現してAndroidだけがこれをサポートする、など)、差分プロジェクトを作成する必要が出て来る可能性はありますが、マルチプラットフォーム戦略を推進する上では、このような非共通のAPIがアドビから多く用意されるとは思えません。

早く自分が作ったアプリケーションを気軽に持ち出せる時代が来て欲しいものです。

0 件のコメント:

コメントを投稿