• Date:2009/11/24
  • Category:Flex
  • Author: wonder

最近、actionscript3.0に興味がでてきたんですが、どうにもこうにもFlashが買えない。
actionscript3.0ならFlexがあるじゃない!
ということですが、Flexっていうものをまったく知らなかったのでしらべてみた。

Flexって何。

これが未だによく分からない。
Wikipediaだと、

Adobe Flex(アドビ・フレックス)は、リッチインターネットアプリケーションの統合開発環境とSDK。デザインにはMXML(Macromedia Flex Markup Language. Macromedia Flexのプレゼンテーションを記述するためのXML言語)を利用し、プログラムにはActionScriptを利用し、Flash Player上で実行するswfファイルを生成する。Flex3からはAIR上でも実行可能。

http://ja.wikipedia.org/wiki/Adobe_Flex

とのこと。よく分からない。
AdobeのFlexのページを見てみると

Flex は、主要なブラウザ、デスクトップ、オペレーティングシステムに同一の体験を提供し、表現力豊かなWebアプリケーションを構築および管理できる、高い生産性を誇る無償のオープンソースフレームワークです。

http://www.adobe.com/jp/products/flex/

と、余計に分からない。
他にも色々と見てみました。

この最後のスライドなんかはすごい分かりやすいですね。
要は、Flash技術をベースにしたリッチなコンテンツを作れるフレームワークっていうことでしょうか。

技術的には、MXMLというXMLベースのマークアップ言語とactionscript3.0を使って構築をします。(※Flex 3)
Flashにあるような、タイムラインやムービークリップという概念は存在しません。
(※ここでいうFlashはソフトの意味)
たとえばこんな感じ。

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" styleName="plain">
    <mx:Script>
        <![CDATA[
        import mx.controls.Alert;
        private function clickfunc( event:Event ):void {
            Alert.show("クリックされました。");
        }
        ]]>
    </mx:Script>
    <mx:Button id="myButton" label="クリックしてください" click="clickfunc(event);" />
</mx:Application>

<mx:Button>のようなパーツを配置して、イベントなんかの設定はactionscriptで書きます。
サンプルもあったので載せておきます。

Flex サンプル

Flashとの住み分けは、アニメーション部分なんかなFlexではできないのでFlashでやる。
っていうことでしょうかね。
ただ、Flexでもactionscript3.0は書けるのでwonderflなんかで投稿されているようなスクリプトでガリガリ書いているようなものはできます。
ぼくは出来ませんが。

使用ツール

Flex SDK
コンパイラ?
これとテキストエディタだけでも開発可能ですね。漢ですね。

Flex Builder
Adobeが作ってるオーサリングソフト。
いわば、Flex版のDreamWeaverみたいなもの?
かなりスタンダードなソフトらしいですが、一応有料。

Flash Develop
Flex Builder買えないよっていう人には(僕です)これです。無料で使えます。
コード補完もついてます。
Flex SDKをインストールしてパスを通せばコンパイルもしてくれます。
ただ、英語だというだけです。

wonderfl
こんなん作れるようになりたい!っていう目標にどうぞ。

開発環境の準備

こちらをご覧あれ

Flexの良い点

アニメーション等Flashコンテンツを利用できる
Flashがベースなので、他で作ったアニメーションのswfなんかを読み込むことができます。
Flash自体かなり普及しているので、(開発者にしてもプレイヤーにしても)互換性は高いですよね。
Flashクリエイターとの連携とかできたらすごいなーって気がします。

Flashを使うからブラウザの差異を気にしなくてもいい。
Ajaxでも同じようなコンテンツを作れますが、HTMLで作った場合どうしてもブラウザの差異に苦しめられます。
FlexはFlash上で動くのでこれがありません。
これって、意外に良いですよね!

無料で使える
これは人によるかなw。
僕自身、Flashが買えなくてactionscript3.0の勉強はどうやってしようと思っていたクチなのでそういった面からもいいのかも。

逆に悪い点

技術が必要
結局、MXMLもイチから勉強しないとだし、actionscript3.0も勉強しないとだし。
まあそれはどの技術も同じですかね。

重い
あと、やっぱりHTMLと比べれば出来たものは重いですよね。

ちょっと触ってみて

まあ、いろいろ調べるより触るほうがいいかもと思ってちょっと触ってみました。
感覚としては、HTML+javascriptでやることを、MXML+actionscriptでやるっていう感じですかね。
HTMLのようにMXMLでパーツの配置をして、あとはactionscriptで動かしたり値を取得したり。

Flash上でHTMLを組むって言うか。そんな感じ。
Flashだから、ブラウザ毎の差異を考えなくていいのはちょっといいかも。
ツールも全て無料で開発できますし。(Flex Builder必須というわけでもない)
javascriptでDOMをいじくっているような人だととっかかりやすいのかなと思います。

ただ、actionscript3.0っていうのはやっぱり敷居が高いですねー。
ここはじっくりと学ばないといけないですね。

アプリケーションの作りやすさとか、質とかそういうのはまだわかんないですが、
いままで、HTMLをいじってきたコーダーとしては幅を広げるって言う意味でも是非やったらいいと思います。

※ぼくみたいな「Flash高くて買えない」っていう人にとってはactionscript3.0の勉強もできますしね!

Name
Comment

To pagetop


wonder_boys

wonder
Webデザイナー兼マークアップエンジニア。 静岡県浜松市在住。

RSS Entries

RSS Comments

Sponsored

Entries

Archive

Categories

Tags

まとめ アクセシビリティ イベント イベントリスナー オブジェクト オライリー バグ マイクロフォーマット マークアップ ユーザビリティ レビュー 引数 携帯サイト 正規表現 画像 目標 管理画面 背景 設定 alt AS3.0 Bitmap canvas content css DataGrid dreamweaver Flex form HTML html5 IK iphone javascript meta middle PHP png SGML SVG table wordpress XHTML XML

Links

킹ēǂ݂uOp[c