ブログ

[Flex2]巷でうわさのFlex2

2006年10月05日(木)17:50|sato

こんにちは皆さん。佐藤です。

今日は「Flex2」について、説明をしたいと思います。

情報収集を怠らない皆さんならば、最近「Flex2」というFlashに似た何かが世に出たらしいぞ、と、そんな噂は耳にしているかとは思います。しかし、Flashとどう違うのか、そもそも Flex2とは一体なんなのだ、と、ヤキモキされている方も少なくないのではないかと思います。

Flex2

「Flex2」とは開発ツールです。Flex2を利用する事で、FlashPlayer9以上に対応する様々なWEBアプリケーションを制作することが可能です。

ちなみに、WEBサイトにあるアニメーションを一言で「Flash」と言っても、すでに意味が通るほど一般化しましたが、この「Flash」と言う言葉も本来は開発ツールを表す言葉です。

Flex2 について「Flashみたいなものでしょ?」と、一言で片付けてしまった方もいるかもしれません。確かに、Flex2、Flash、どちらの開発ツールを使用したとしても、最終的に生成されるものは、swf(ショックウェーブファイル)というファイルです。ユーザー側から見れば、Flex2で開発されようが Flashで開発されようが、特に違いはありません。

しかし、開発側から見れば、いくつもの違いがあります。

Flex2とFlashの違い

細かい機能としては色々な違いはありますが、一言でその違いを言うならば、Flashはアニメーション製作に特化したツールであり、Flex2はアプリケーション開発に特化したツールであるということです。

Flash

FlashはActionScriptと呼ばれるプログラム言語を使用することで、アニメーションの中に様々なトリックを仕込むことが可能です。また、ドローイングソフトとしての機能もあり、絵を描くことも外部から画像(や動画)を取り込むことも可能です。そして、マウス操作で簡単にレイアウトすることができます。さらに、ぼかしやグロウなどのエフェクト、モーションやトゥイーン等、アニメーションをより洗練するためのたくさんの機能を持っています。

アニメーションを制作する際には、非常に高機能なツールであることは間違いありません。

しかし、Flashでアニメーションではなく、何らかのアプリケーションを制作したい場合には不便な部分も出てきます。Flashの開発ではムービークリップと呼ばれる時間軸を持ったオブジェクトが基本となります。しかし、多くのアプリケーションでは、ユーザーからのアクションに対して処理が必要であり、時間軸は無用です。

またFlashでは、ActionScriptでギミックを実装する際にそのプログラムは、時間軸上かオブジェクト上に記述します。これは複雑な処理を行おうとするプログラマにとっては非常に扱いづらいものです(慣れてくればまた違うのかも知れませんが)。

例えばFlashの場合、メインムービークリップ上にムービークリップ(オブジェクト)とボタン(オブジェクト)が配置されているとします。ボタンが押された時の処理は、ボタンに直接記述できます。しかし、メインの時間軸上にも記述することは可能です。さらに、ムービークリップ上に記述することもそのムービークリップの時間軸上に記述することも出来ます。どこにでも書くことが出来るというのは、自由度が高い、と言えば聞こえが良いのですが、様々な場所に分散されて記述されたプログラムを一連のシステムとして稼動させるためには並々ならぬ努力(デバッグ)が必要です。なにより、プログラマとデザイナの作業範囲が密接に絡んでしまうことも問題です。

Flex2

一方でFlex2では、開発の基本はApplicationコンテナになります。Applicationコンテナには、様々なコンポーネントを配置することが出来ます。これらのコンポーネントは、ソート機能を装備したテーブルやロード状況を示すプログレスバーなどの多様なものが利用可能で、もちろんそれらをカスタマイズすることもできます。Flex2ではこれらのコンポーネントをマウス操作で画面上に配置することで自動的にmxml(xmlの拡張言語)が生成されます。内部的な処理には、ActionScriptを利用できます。

内部の処理はプログラマが他のオブジェクト指向型言語と同様のスタイルでActionScriptを使って記述することができます。さらにその内部処理をデザイナーがmxmlを使って呼び出すことが出来ます。Flex2を使う最も大きな利点としては、ActionScriptとmxmlという構成によってデザイナーとプログラマの作業範囲の切り分けが容易だという事かもしれません。

Flashのバージョンについて

ここまで「Flash」という表現で説明を続けてきましたが、これは現時点(2006年10月)でリリースされている最新のFlashであるFlash8を念頭に説明を行っています。Flex2では、ActionScript3.0が使用可能なのに対し、Flash8ではActionScriptの使用可能なバージョンは2.0までです。現時点で実際に制作を行なう場合にはこの点も考慮に入れた上で、開発ツールを選ぶ必要があります。(次バージョンのFlash9ではActionScript3.0を使用可能との事です。これは、すでにアルファ版で機能追加されています。)

Flex2による開発

ここで実際にFlex2で小さな小さなアプリケーションを開発してみたいと思います。

そう思っていましたが、ここまでずいぶん長くお話してしまいました。皆さんもお疲れのことだと思います。と、いうことで何か実際にmxmlとActionScriptのサンプルと共にお見せするのは次回にしたいと思います。

Flex2というものに少しでも興味を持っていただければ幸いです。それでは、また次回。

この記事に関するお問い合わせはこちら

ページの先頭へ