疑問解決(Flex)

2008/7/28

最近の流行はRIA(Rich Internet Application)です。
WEBクライアントもリッチインターフェースが当たり前になってきました。

・Flexの概要
 

”Flex”は、今はやりのRIAのひとつで、”Ajax”と双璧なしています。
 Adobeの新しい技術で、Flexはプレゼンテーションサーバで、UIはFlashとなります。

 バージョン1の時は、J2EE上で動作し、サーバ上でコンパイルていましたが、
 バージョン2以降はクライアント側でFlashファイルをコンパイルし、サーバにデプロイします。

 Flashのファイル自体は、サーバからダウンロードしますが、
 その後サーバと通信するかどうかはFlash(Flex)に通信処理を組み込むかに寄ります。
 サーバ側との通信手段は下記のどれかになります。
  ・HTTP (GET/POST)
  ・WEBサービス(SOAPベース)
  ・RemoteObject(AMF)
  ・低レベル通信API

・構成
 flexは、コンパイラであるflex SDKと、
 ユーザインターフェースの設計ツールおよびデバッグ環境を備えた
 flex Builderがあります。
 flex1.0では、非常に高価でしたが、
 2.0になってからは、flex Builder が10万以下、
  SDKにいたってはフリーで提供されています。
 そのため、ちょっとしたものであれば、SDKを使って手軽に開発が可能です。

 さらに2008年初頭には、FlexBuilder3が出るようで、
 値段はさらに下がって3万円程度だそうです。
 いまからFlexBuilderの購入を検討している人は、
 3.0の体験版を使うという手があります。
 体験版は、機能的にはフルスペックで利用できる期間が90日に限定されています。
 そのため、2.0を今買うよりは、とりあえず体験版をインストールしておき、
 3.0の正式版を購入した方が良いと思います。


 ついにFlexBuilder3、AIR、BlazeDSが正式に発売されました。
 FlexBuilder3の価格は下記の通りです。
Edition 価格
(アップルストア)
解説
Standard \31,500 基本パッケージ
Professional \89,250 Standardに加えて下記の機能があります。
 ・チャート
 ・機能テストの自動化
・特徴
 HTMLベースの場合は、データのやり取りを行う際、
 画面遷移を必要とします。
 RIA一般的な特徴ですが、
 画面遷移をせずにデータのやり取りができるため、
 レスポンスの向上が図れます。
・FlexおよびFlashのバージョン間の比較
  Flex Flash
1.x 2.0 8 9
対応FlashPlayer 7以降 9以降 8以降 9以降
搭載AVM
(ActionScript Virtual Machine)
1、2
ActionScript(AS) 2 3 2 3

AS2はAS1を拡張したものですが、
AS3はゼロから開発したので大幅に違っています。
コーディング次第では、AS2の10倍速いコードが書けると言われています。
・記述言語
 Flexは、XMLをベースとした
 MXML(Macromedia XML)を使用します。
 つまりタグベースでの記述なので、JSPやPHPに近い形となります。
 実際は、MXMLはActionScriptに変換され、swfにコンパイルされます。

 文字の大文字・小文字については、下記の決まりがあります。
  クラスの先頭は大文字
  プロパティ名は小文字 
・記述方法
1.XMLヘッダ
  <?xml version="1.0" encoding="utf-8"?>
 XMLなのでXMLヘッダを記述

2.mx:Applicationタグ
  <mx:Application>
 〜
</mx:Application>
 ひとつのファイルに対して1個しか存在しないもの。
 アプリケーションの記述はすべてこのタグの中に書く。
・ラベルとテキストの違い
 ラベルとテキストは似ていますが、下記のような違いが有ります。
  ラベル テキスト
文字の選択 不可
(不可にすることも可能)
複数行表示 不可
ワードラップ しない 自動

 HTMLタグを記述する際は、両者とも<mx:htmlText>タグを使用し、
 CDATAセクションに入れる必要が有ります。
・Adobe製サーバ製品群Data Services
 AdobeはFlash、AIRとの連携を容易にできる
 サーバソフトウェア”LiveCycle Data Services”を提供しています。
 (以前はFlex Data Servicesと呼んでいました。)
 J2EE上で動作します。
 無償で無期限商用で利用できる LiveCycle Data Services ES Express もあります。
 下記にLiveCycle製品群をまとめます。
機能 LiveCycle Data Services
Enterprise Suite(ES)
LiveCycle Data Services
ES Express
LiveCycle Data Services
Community Edition
BlazeDS
概要 LiveCycle Data Service群のスーパーセット製品です。 ESの評価版に相当します。
1CPUのサーバのみに
インストールできます。
クラスタリング等も使用してはいけません。
BlazeDSの
Adobe保証版です。
オープンソースです。
ライセンス形態は、LGPLv3です。
価格 調査中 無償 調査中 無償
・OpenAMF
 JavaによるオープンソースのFlash Remoting実装です。
 ただし、BlazeDSが公開されたため、今後はどうなるのでしょうかね。
・AMFPHP
 Flash Remoting に対応したPHPです。
・AIR(Adobe Integrated Runtime)
 Flashをデスクトップ環境下でも動作できる様にする仕組み。
 ブラウザ上では、セキュリティの制約がありローカルへのアクセスが
 極端に制限されている。
 AIRでは、その制限に捉われないため自由度の高いアプリケーションが開発できる。
・単語集
単語 解説
AMF
(Action Message Format)
AMFは、Flash(Flex)アプリケーションと
サーバ間とで通信を行うフォーマットです。
以前は、仕様を公開していなかったため、
識者の方たちが解析を行い、
OpenAMF等のサーバ側の技術を開発しました。
ただし、2007年12月仕様が公開されました。
SWX
(Action Message Format)
SWXとは新しいバイナリデータフォーマットであり、
SWFのサブセットになっています。
Flashからすると、
パースすることなく直接扱うことができるため、
処理が早くかつ簡単になります。
また現状ではFlash Lite2で使える
唯一のリモーティングソリューションです。
WPF MicrosoftのAir対抗技術です。
さらに情報が欲しい方は、Google検索で  
Google
・TOPへ戻る
 

 

メールはこちらに