この記事では、Adobe Flexに関してありがちな10の誤解を紹介し、順に解説していきながらAdobe Flexの本質について触れていきたいと思います。
本稿は当初2007年12月、InfoQ.comに掲載されたものです。
1. ユーザがFlexアプリケーションを実行するには、何かを新たにインストールしなければならない
Flex 2およびFlex 3で必要なのは、Flash Player 9です。現在、Flash Player 9ランタイムは世界中のコンピュータの94%にインストールされています。
Flex 2およびFlex 3のアプリケーションは、Flash Player 9で実行されます。Flexアプリケーションは、ベクトルグラフィクスやビットマップ操作、(ブラウザのネットワーキングスタックをベースにした)ネットワーキングなど、ネイティブのFlash Player API上に構築されます。そして、Flexフレームワークによってカレンダやデータグリッド、各種チャートなどの再利用可能なコンポーネントが提供されます。
2009年9月現在での、Flash Player 9の普及率は99%、Flash Player 10は94%。
Flexアプリケーションをコンパイルすると、Flash Playerのバイナリコード形式であるSWFファイルが生成され、このSWFファイルには、Flexフレームワークのバイトコードと各プロジェクト固有のカスタムコードが含まれます。コンパイル時にはFlexコンパイラがバイトコードを最適化するため、実際に使用されているクラスのみがSWFファイルへと収録されます。
また、アドビではデスクトップアプリケーション向けにAdobe AIRを開発しており、このデスクトップランタイムを、Webランタイム同様に普及させることが目標として掲げられています。Adobe AIR 1.0は、2008年初旬に提供開始の予定であり、現在はlabs.adobe.comにてベータ版がリリースされています。
2009年11月、Adobe AIR 2のベータ版の提供が開始された。
・Adobe、「Adobe AIR 2」ベータ版および「Flash Player 10.1」プレリリース版を公開(CodeZine)
・Adobe AIR 2.0 Beta(Adobe)
Adobe AIRを利用して、既に本稼働用アプリケーションの開発を手がけている企業は少なくありません。例えばeBayのアプリケーション、eBay Desktopが一例として挙げられます。
2. Flash Playerは100%クローズドソースである
Flash Playerの中核を担うのが、Mozilla管轄下のオープンソースプロジェクトであるTamarin Virtual Machineです。SWFのファイル規格は完全にオープンではないものの、コミュニティの協力によりosflash.orgにて文書化されています。また、SWFファイルを読み書きできるオープンソース製品は多数存在します。
製品としてのFlash Playerの方向性は、以前から、コミュニティとそのニーズに多大な影響を受け続けてきました。Flash Playerのコア言語は、JavaScriptの規格としても知られるECMAScript 262の実装です。また、Flexではコンポーネントやアプリケーションのスタイリング手段としてCSSが採用されています。さらに、Adobe AIRでは、デスクトップアプリケーションの基盤としてWeb標準が用いられているとともに、Tamarin、Webkit、SQLiteなどのオープンソーステクノロジも利用されています。
3. Flashはデザイナー、ビデオ、あるいは嫌がらせに適している
Flashの提供するパワーが、乱用されかねないことは否定できません。ポップアップやポップオーバー、イントロスキップ、目障りな広告などが雑然とスクリーンに表示されることがあります。しかし筆者は、宗教をその乱用例をもって判断すべきではない、という言葉を聞いたことがあります。この格言はテクノロジにも当てはまるのではないでしょうか。つまり、一部で目障りな使われ方が存在するからといって、Flash自体が避けられるべきではありません。これは、迷惑メールとして電子メールを乱用する者がいるからという理由で、電子メール自体を敬遠するのと同じことです。
Flashコンテンツは従来、デザイナー向けのタイムラインベースのツールで制作されていましたが、Flexは、デベロッパーがFlashベースのコンテンツ・アプリケーションを開発することを可能にするツールセットです。デザイナーとデベロッパーは、この2つのツール間でアセットを共有し、共同で作業を進めることができます。また、Flexには充実したコンポーネントベースが用意されています。詳しくは以下のリンク先を参照してください。
この記事は参考になりましたか?
- Adobe Developer Connection連載記事一覧
- この記事の著者
-
James Ward(James Ward)
AdobeのFlexテクニカルエバンジェリストで、JSR 286、299、301におけるAdobeのJCP代表者。登山とプログラミングを愛し、無限の新発見、巧みな危機回避、山頂と谷が存在することが両者の共通点と語る。登山で各地の山に挑んだのと同様に、テクノロジーの分野でもさまざまな領域に挑戦。90年...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
