Adobeは先日2月25日、Flex 3 SDKおよびAIR(Adobe Integrated Runtime)をリリースしました。それに便乗し、これまでの経緯をまとめてみました。
それぞれ、以下にてダウンロード可能です。
- Flex 3 SDK
- http://www.adobe.com/go/flex3_sdk
- AIR
- http://get.adobe.com/air/
Flashの経歴とFlexの誕生
さて、初めにFlexとAIRについて考える為には、Adobe(旧Macromedia) Flashの存在が欠かせません。
Flashは元来はベクター系のアニメーション制作ソフトウェアであり、Webとの親和性と表現力から多くのWebサイトで用いられてきました。WebコンテンツとしてもFlashアニメは一定の人気と規模を持っていました。
ですがFlashは版を重ねるにつれアニメーション表現のみでは無くなってゆきます。代表的なのがActionScriptの導入です。これはFlashに配置されたオブジェクトらに対し細かい動作を与える為のスクリプト言語となっています。
Web上のコンテンツとして、Webゲームがあります。実装方法は様々で、DHTML(Dynamic HTML)と呼ばれるJavascriptの手法やJavaアプレット、サーバーサイドの技術によるものもあります。その一つとして旧Macromedia社はDirectorというソフトウェアで開発する"Shockwave"を持っていました。
しかしアニメーションはFlash、マルチメディアソフトはDirector、という区分が取り払われる事となります。FlashはActionScriptの力をもつ事でShockwaveが元々居た地位をも取り込む事に成功した訳です。
現在でももちろんFlashアニメは存在しますが、それに加えてゲームやリッチアプリケーションなど、Web上において幅広いシェアを獲得しています。例えばFlash 6から実装されたFlash Video(.flv)により、動画サイトなど、Flashを通じて動画コンテンツの配信が可能となっています。
Flashのもつ力が拡張されるに伴い、そのオーサリングソフトであるFlash(技術・規格とソフトウェアが同名)では扱いづらい場面が出てきました。たとえばアニメーション前提なのでタイムラインが存在すること、レイアウトが絶対座標のみである事などです。
そこでAdobeはFlexという開発環境を打ち出しました。これによりコンポーネントを用いたUIの組み立て、それらコンポーネントに対するイベント処理、といった所謂イベントドリブン型でFlashが開発出来るようになったのです。UI設計はMXML(Macromedia Flex Markup Language)というXMLの応用を、動作の記述にはActionScriptを用います。
そしてマルチメディアとリッチUIアプリケーションの土壌が整ったFlashは、次のステップ"AIR"というプラットフォームを得ます。
AIRの誕生
AIR(Adobe Integrated Runtime)はAdobeの技術をデスクトップ上で使う為のランタイムとして開発されました。その中にはPDFやFlashも含まれます。
前章で述べた通り、いまやFlashはアプリケーション構築のための実行環境といえるようになりました。ただし、制限として、Webブラウザ上でしか動作出来ないということがあります。
AIRはブラウザで組み込みオブジェクトとして現れるFlash Playerとは別物のFlash動作環境で、AIR自体はブラウザとではなくOSと関わりを持っています。その結果ローカルのファイル操作やウィンドウの所持、拡張子の関連づけなど、ネイティブアプリケーションと変わらないような実装が出来るようになりました。
AIRそのもののインストールが必要である、という制約はあるものの、Flashの表現力およびFlexの生産性をWebのみではなくデスクトップに持ち込む事となります。今まででマルチメディアコンテンツとして、Webアプリケーションとしての実績を持つFlashですので大きな影響力を持っていきそうです。
あとがき
随分と長くなってしまいました。もとはFlex+AIRのプログラミングテクニックでも載せようと思っていたのにいつの間にか各技術の経歴まとめに...
ですが、自分もMXML+ActionScriptでハマった点などがありますのでそこらへんは次回以降に。
それと今回はAdobe周辺のRIA(Rich Internet Application)技術でしたが、Microsoftも競合する技術を出しています。Webブラウザ上でMicrosoft SilverlightとAdobe Flashは競合していますし、XMLでUIを記述する点ではMicrosoftのWPF(Windows Presentation Foundation)におけるXAML(Extensible Application Markup Language)とAdobeのMXMLは共通しています。
将来的にこれらがどうなるのかは市場が選択するでしょうが、出来れば多くのエッセンスを学び取っておくと融通が利きそうです。
カテゴリ
トラックバック
このブログ記事を参照しているブログ一覧: Flex、AIRへの導入
このブログ記事に対するトラックバックURL: http://www.memorize-being.net/x/mt-engine/mt-tb.cgi/39


コメントする