研究概要 |
今年度は研究計画に従い,前年度開発したプロトタイプシステム,および実開発における問題点を整理し,フレームワークの再実装を行った.本フレームワークはRIA開発の1つであるFlexをベースに,デザインとロジックをソースコードレベルで分離することを可能にするが,プロトタイプでは開発時に静的に決定できる部分にしか対応できていなかった.実際のアプリケーションでは,例えば在庫数に応じて生成する画面の個数が異なるなど,実行時にしか決定できないこともある.そこで本年度は,実行時にしか決定できないことに対してデザインとロジックを分離する拡張を行った.具体的には,デザイナに対して名前ベースの規約以上の負担を課すことは難しいと考え,実行時に決定するデザインとロジックの関係を結びつけるために,その機能を開発者には馴染みの深いAPI形式で提供することで解決した. また,FlexベースのRIAでは,効果的なアニメーションを利用することがあるが,多くの場合アニメーションはFlexと相性がよいFlashコンポーネントで作成される.アニメーションの制御(再生や停止)はアプリケーションの本質的な処理ではないが,RIAはイベントドリブンで実行されるため,開発者がイベント処理に加えてアニメーション制御のコードも記述する必要がある.この問題に対し,本年度はアプリケーションの本質と横断的関心事を分離するアスペクト指向の思想を応用し,規約にもとづきFlashコンポーネントに埋め込まれたアニメーション制御用の機能を自動的に呼び出す機構を実現することで解決した. 本研究の成果により,デザインとロジック,アニメーションが複雑に絡み合うRIA開発において,それぞれをソースコードレベルで分離することができるため,それらの統合やテストの手間を軽減することができ,開発効率の向上が期待できる.
|