Flex 3でどう変わるか
FlexおよびAdobe AIRの現況について教えてください
まずAdobe AIRの方からお話しますが、Adobe AIRはデスクトップ上で動作する実行環境、逆にFlashはWebブラウザ上で動作する実行環境です。その中で、実はFlexはこの両方を行うことができます。ただ、ソフトウェアのデプロイメントの方法が、ブラウザなのか、デスクトップなのかによって大きく分かれていることを冒頭で述べておきます。
最新バージョンのFlex 3にはAdobe AIRが内蔵されています。
また、Flex 3は開発プロセスにおける一つの節目ということで、いくつか鍵となる要素があり、具体的にはプロファイラや新しいコンポーネントが追加されたほか、開発モデル・開発モジュールにも手が加えられており、開発言語のMXMLとActionScriptの改善、強化も行われています。また、アプリケーションサイズを縮小させる機能も含まれました。
Flex 3の新機能について、もう少し詳しく聞かせてください
改良という観点では、多少パフォーマンスチューニングなどを行っていますが、それほど大きく手を加えることは考えていません。というのも、先ほど話しに出た新機能「プロファイラ」があるからです。
どちらかというと、レイアウトまわりで新しい制約を追加していくことを考えています。
また、プロパティをアプリケーション上に注入するためのプロパティシートや、日本語化されたAPIも提供する予定です。
あと、Ajaxとの統合も考えており、「ディープリンキング」という新機能の付加を考えています。これはURLに対して、文字通り深いところで、Flexアプリケーションとのリンクを図っていくというものです。
それ以外にも、Flex 3に関しては、50~60の新機能の導入、コアのSDK上で200以上のバグフィックスを行う予定です。
デープリンキング機能は、HTMLのページ内リンク(#~)のようにして、URLを変えた際にFlexアプリケーションを閉じることなく、別の場所(ステート)を表すことを可能にする。
詳しくは、Adobe Labsの「Flex 3:Feature Introductions: Deep Linking」などを参照のこと。
Flex 3のオープンソース化の進捗については?
Flex 3の最終バージョンは、オープンソースの認定をきちんともらった上で出荷する形になります。今、まさに移行過渡期で対応を進めているが、まだ認定取得という所まで至っていません。また、そのプロセスの一貫として計画についてもオープンである必要があるので、今後どういった領域を目指していて、今どういう段階にあって、何を変えていかなくてはいけないか、ということについても開示していく方針です。
実際、4カ月ほど前から、bugs.adobe.comでオープンなバグべースを公開しており、現在1,700名の開発者が登録しています。多くのバグがログされてきており、さらに品質を向上していける体制が整っています。これにより、Flex 3完成の暁には、品質において飛躍的な向上、さまざまな課題が乗り越えられた形での出荷になると思います。プロセスに関わった開発者のナレッジベースが飛躍的に増えていくであろうことにも期待しています。
なお、Flex Builder 3では、マルチプルな複数のSDK対応ができるようになっており、インストールされているSDKに依存しません。そういった意味では、実際にSDKをAdobe Labsからダウンロードできるので、どういった形でFlexがビルドされたかを独自で検証してもらえるのも大きな利点でしょう。
Flex 3のオープンソース活動の統制については、各コミュニティのリーダーに参画してもらうことで、どういうニーズがあるのか、今後の方向性の示唆をもらう予定です。Flex 3の次のバージョンの計画立案に、その意見を反映していきたいと考えています。
Flash Player 10 「Astro」が、FlexやAdobe AIRに与える影響は?
Adobe AIRもFlexも、Astroの機能を選択して使えるようにしています。基本的にFlash Player技術の取り組み方は、大幅に変更するのではなく、小さな改善点を積み重ねることによって、開発者の仕事をやりやすくしていこうというスタイルです。
具体的には、現在のFlash Playerではできない、テキストのレイアウトや編集機能の強化、右から左に読む言語のサポートなどが可能になり、テキスト環境が充実します。これはアジア圏において大変重要であると聞いています。
また、Astroは独自のグラフィック効果を作る機能も追加され、新しいプログラミング言語の「Hydra」(ハイドラ)を使って行います。技術的にはピクセルシェーダーを実装したのと同じで、比較的性能の低いハードウェアやソフトウェアでも3Dを活用できるようになっていて、動作も速いことが特長です。Flexのトランジションエフェクトは2D上でしか行えませんでしたが、3D効果が使えるようになったことで、例えば、空間上でダイアログボックスがくるっと回転する、といったことも可能になります。
たぶんユーザーに、よりよいエクスペリエンス(経験)をしていただける大変リッチなUI環境ではないかと思います。