米Adobe Platform Business Unit, Sr. Principal ScientistのMark Anders氏

Thermo」は、先だって開催されたAdobe MAX 2007の基調講演2日目において発表された全く新しいRIA開発ツールだ。本稿では、Adobe MAX 2007の閉幕後にサンフランシスコの米Adobe社屋にて行われた、Thermo開発指揮者 Mark Anders氏によるブリーフィングセッションの内容も踏まえ、ThermoがRIA開発をどう変えるのかについて、若干の予想も含めて解説してみたい。

Thermoの概要と登場した背景

ツールとしてのThermoを一言で表すならば、「RIAデザイン用ツール」だ。

Thermoのスタート画面

AdobeのRIA技術の筆頭と言えばFlexであり、開発ツールとしてはFlex Builderが既に提供されている。Flexは、それまでFlashを用いて行われていたRIA開発に「コンポーネントモデル」を導入することで、革新的な生産性をもたらした。コンポーネントは「デザイン」と「振舞い」を一体として提供し、開発者は、そこにロジックを追加するだけでリッチなアプリケーションを構築することができた。

しかし、コンポーネントモデルは開発者にとっては非常に扱いやすいものではあったが、UIを設計するデザイナにとっては非常に制限の厳しいものであった。デザイナは、自身の創造力をコンポーネントという枠組みの中でしか発揮することができず、自分が望むデザインを実現するためには、コンポーネントのカスタマイズを行う他なかった。コンポーネントのカスタマイズ作業は、デザイナにとっては決して容易ではなく、本来の創造的な活動とはかけ離れたものだと言える。

こうした状況を改善するためには、デザイナにとって重要な「見た目」の部分と、RIAとして重要な「振舞い」が分離された、新たなコンポーネントモデルが必要だ。そこで新たに導入されるのがグラフィックスコンポーネントである。

グラフィックスコンポーネントは、描画されるグラフィックスをMXMLのタグで表すことのできる、表現力豊かなコンポーネントだ。これによりデザイナは、既存のコンポーネントモデルに縛られることなく自由にデザインを行うことができ、後から「振舞い」を追加できる。

具体的に言えば、グラフィックスとして描画された矩形に対し、Flexのテキストフィールドコンポーネントの振舞いを追加する、などが可能だ(これは実際にMAXでデモンストレーションされていた)。

グラフィックスコンポーネントを表すタグ。<mx:Graphic>の中に、矩形を表す<mx:Rect>が定義されているのがお解りだろう

グラフィックの一部にテキストフィールドとしての振る舞いを追加。<mx:TextInput>でグラフィックコンポーネントを囲んでいるのがわかる

そして、この節の冒頭で述べた「ThermoはRIAデザイン用ツールである」という言葉を、より具体的に、そして大雑把に言い換えるならば、Thermoはグラフィックスコンポーネントの編集を行うためのツールであると言えるだろう。