ActionScript 2.0を考える。

ActionScript(アクションスクリプト) 2.0がリリースされてから、久しく月日がたちました。Flash(フラッシュ)によるWebアプリケーションも増え、ニーズの高まりを見せるActionScript 2.0です。その反面(?)、Flashテクノロジーをお伝えしている立場として、

「やっぱりよくわからない」

「おぼえる必要があるか、迷う」

という声を頂くこともあります。

そこで、m-Schoolで講師をしているサイト外へリンククスール松村 慎(まつむら しん)氏に、「ActionScript 2.0とは?」と、素朴な疑問を投げかけてみました。

松村氏の担当講座

実用サンプルで学ぶActionScript 2.0実践講座

実用サンプルを通して、知らずうちにAcrionScript 2.0の世界へお誘いします。松村氏が共同執筆した、Flashによるオブジェクト指向の書籍をテキストとして使用。

※日程により松村氏が講師でない場合もありますので、あらかじめご了承ください。


m-Schoolインタビュアーそれでは、ActionScript 2.0って何ですかっていう…。

松村何なんですかね(笑)

m-SchoolインタビュアーそもそもActionScriptを使わない方は、なぜプログラム言語に1.0とか2.0とかバージョンがあるんだろう?という疑問があるのではないかと思います。

松村そうですね、はい。

m-SchoolインタビュアーActionScript 2.0は、Flashがバージョンアップをしたのと同じような感覚で、新しいバージョンのものを使えばいい、というわけではないですよね?

松村そうですね…。別にActionScript 2.0でなくてもいいわけですよね。ただ、僕らはActionScript 1.0のときから、2.0のような使い方をしていたんですね。

m-Schoolインタビュアーといいますと?

松村松村 慎 氏Macromedia Flash MX(ActionScript 1.0)のときからスクリプトがちょっと複雑になってきて、大規模なWeb制作になるとやりにくくなってきたので、全部クラスを作るやり方にしたんです。ActionScript 1.0でも、やろうと思えばできたんです。ですから、僕らからするとActionScript 2.0でできることは必然、という感じですね。必然というか、やっと出てきてくれたか…みたいな。

m-SchoolインタビュアーFlashで凝った複雑なコンテンツを作ろうと思うなら、ActionScript 2.0の方がやりやすいということですね。

松村あとは、みんなで開発するときに使いやすいなと実感します。たとえばバスキュール(制作会社)にいたときがそうなんですけど、5人、6人と複数人で開発するわけです。

m-Schoolインタビュアーその場合は、どのあたりが使いやすいんでしょうか?

松村ひとつは、ソースコードが機能ごとにクラスとして外部ASファイルになっているので、スクリプトが検索しやすいことですね(注:ASファイルの中身は普通のテキストです)。文章の一括検索ができる。ファイルのカテゴライズもできますし。

m-Schoolインタビュアーなるほど。

松村クラスファイルとして、ほかのプロジェクトでも使うようなユーティリティー的なファイル(XML解析関連、外部ファイルの読み込み、カレンダーの日付計算処理など)を使いまわしたり、プロジェクト独自のクラスファイルを共有したり…。

m-SchoolインタビュアーすでにActionScript 2.0の開発経験がある会社は、クラスファイルのライブラリを持っていて、開発工数を抑えることもできているんですね。すでにデバッグ済みの完成しているファイルなので、安心して使いまわせるという…。すごくやりやすいですよね。

松村そうですね。とは言っても、Flashの世界も変化が早いので、5年もおいておけないですけど。まあ半年ぐらい前に使ったものは、使い回せますね。

m-Schoolインタビュアー開発する側にいい面がとてもありますし、それが結果としてクライアントにもいい面になりますよね。でも、やはりActionScript 2.0となると、難易度が高い話に思えてしまう…。それを考えると、ActionScript 1.0でいいのかな…と思う方もいるようですが。

松村それはActionScript 1.0を使うか、ActionScript 2.0を使うかで、住み分けをするということだと思うんですね。ちょっとスクリプトを入れたいというような開発であれば、ActionScript 1.0でいいと思います。でも、規模が大きくなったり、チーム開発が必要だ、というのであれば、ActionScript 2.0が必要だったりするわけです。

松村 慎 氏もうひとつ具体的なActionScript 2.0を使うメリットをあげると、きっちりActionScript 2.0の文法に従って書けばエラーやアラートが出やすくなっている。つまりは、バグを発見しやすいということです。ActionScript 1.0の時は、エラーが出ない、なかなか出ない、でもきちんと動作しないということが多々ありました。いつもバグを探すのに時間がかかっていたので大変でした。エラーがちゃんと出るというのは、結果として、開発が楽になったという気がします。

m-Schoolインタビュアープログラムに弱いデザイナーさんやクリエイターさんが、ActionScript 2.0、特にオブジェクト指向に入っていくために、どのように考えたらよいのでしょうか?

松村僕がいつも説明しているのが、Flashのライブラリパネルの中のシンボルをクラスだと思ってほしい、と。それを使いたいときは、みんなドラッグするじゃないですか?それをActionScript 2.0のプログラムで言うと、クラスからインスタンスを作るということだと思って、といっています。こんな感じで考えると、すんなりと入っていけるんじゃないでしょうか?

m-Schoolインタビュアーシンボルを使いまわしてインスタンスを配置するように、ActionScript 2.0ではクラスを使いまわして、インスタンスを作って開発すると、いうことですよね。ActionScript 2.0を知らないっていうことは、Flashムービーでいうとシンボルを使わないくらいに面倒なことともいえますよね。それは考え方として、いいかもしれないですね。

松村ボタンとかせっかく書いたのに、使わないというのはもったいない。最近はプログラマーの方に教える機会が多かったのですが、Flashユーザーにはこの考え方がしっくりくるんでしょうね。

m-Schoolインタビュアープログラマーの方はプログラマーの方で、「ムービークリップって何ですか?」という素朴な疑問もあるようですが…(笑)

松村ActionScript 2.0は、プログラマーの方はもちろんなのですが、やはり本当はもっとFlashな人に身につけてほしいですね。今までの受講生の方でも、コードがぐちゃぐちゃになってどこに書いてあるかわからない経験をして、プロジェクトが大変で、どこにソースがあるのかわからない、デバックが大変だ、という負の経験をした人が、ひと踏ん張りしてActionScript 2.0をマスターして、ハッピーになっているケースが多いですよ。

m-Schoolインタビュアーそういった方々が、一人でも多く増えるといいですよね。本日はどうもありがとうございました。


講師略歴
松村 慎 (まつむら しん) 松村 慎 (まつむら しん)
サイト外へリンククスール
株式会社バスキュールに勤務し、Flash制作に携わる。2005年に独立、サイト外へリンククスール開設。『クスールとは、Macromedia FlashのActionScriptを中心に、物づくりを教えている小さな教室です。場所、世代、手段を選ばず、楽しいところに飛んでいきます』。そのほか、友人と二人でサイト外へリンク9zaku.comを運営。サイト外へリンクFlash OOP Japanユーザーグループマネージャー。書籍「FlashOOP ActionScriptによるオブジェクト指向プログラミング」第12章著作。