RIAテクノロジは主流のアプリケーション開発ソリューションになりつつあり、RIAを定評あるテクノロジプラットフォームに統合する必要性が増してきている。オープンソースライブラリFluorineFx(source)はこのニーズを.NETを用いて果たそうとしているプロジェクトの一例である。InfoQはその詳細を探るため、FluorineFxプロジェクトマネジャーであるZoltan Csibi氏に尋ねた。
FluorineFxが何であるかという質問の答えをZoltan氏は下記のように要約している。
FluorineFxはFlex/Flash Remoting、リモート共有オブジェクトサポート、Flex Data Serviceと.NETフレームワーク用のリアルタイムメッセージの実装を提供します。最後の二つは現在部分的な実装です。( Flex<->Adobe LiveCycle Enterprise Suiteアプリケーションで見受けられる全ての機能がサポートされているわけではないという意味)またそれはAdobeのBlazeDSとの互換性をサポートします。
Zoltan氏は下記のように続けている。
そのプロジェクトは以前のMacromedia.NETリモートゲートウェイ(.NET1.1を狙いとしていた)に対するオープンソース代案として始まりました。現在Adobeは.NETソリューションを開発していません。FluorineFxはNET1.1、2.0、3.5フレームワークとMono1.2.4をサポートします(Monoの場合においてこれはテストがこのバージョンにおいてのみ行われた事を意味している)。
Zoltan氏はこのツールが実際どのように作用するのか説明した。
最も機能が完成している部分はAdobeのAMFバイナリプロトコル(利点の一つとしてクライアントとサーバ間で非常に最適化されたバイナリデータトラン スファーを備えている)を使用したFlash/Flexリモート機能です。この部分はまたパラメータマーシャル(オブジェクトのシリアル化と非シリアル 化)を処理しているのでActionScriptオ ブジェクトを.NETオブジェクトに変換するのが可能で、またその反対も可能です。私はいつもそれがJava RMI、.NET Remotingかもしくは他のRPCのようなデベロッパに知られているものに似たテクノロジであると説明しています。また"simplified view"はライブラリがflash/flexから.NETサーバサイドコードを呼ぶのを許容するものです。
Zoltan氏からInfoQはFluorineFXはFlex UIデベロッパと.NETデベロッパたちが統合システムを構築するため協力する事を可能にするために開発されたことを学んだ。それがFluorineFxプ ロジェクトがまたクイックスタートのためのプロジェクトテンプレート(VS.NET2003, 2005, 2008)、サービスブラウザ(クライアントアプリケーションの記述なしにサービスをテストする)とテンプレートベースのコードジェネレータを含んでいる 理由なのである。Zoltan氏は下記のように述べている。
この分野においてより私達はより統合されたソリューションに向かっていること、また今後数週間でVisual Studioパッケージのリリース予定があることを強調したいと思います。例えば(Flash/Flex)アプリケーションの作成を可能にしたリモートは Visual Studioからの’シングルクリック’操作になる予定だ(ドキュメンテーションで説明されているように2つのプロジェクトのソリューションを作成する のに勧められているため現在は2クリック操作)。
将来について話しながら、Zoltan氏はユーザビリティの向上がもたらされ、またより良いドキュメンテーションが提供されることを述べた。
Adobe AIRアプリケーション用にデスクトップサービスソリューションを提供してください。(現在はAIRアプリケーションで分散するのが可能なWindows サービスがあり、デベロッパ達はWindowsデスクトップへのアクセスを提供するために自身たちの.NETアプリケーションをデプロイすることができる。)
InfoQはFluorineFxのようなRIA統合ツールの分野における新たな発展を今後も取り上げていく。