独立したFlashプラットフォームのエキスパートであるColin Moock氏(リンク)がO’Reilly InsideRIA上で“ActionScript 3.0に対する苦情(リンク)”という記事を7月に発表したの受け、Flash/Flexのコミュニティでは活発に議論が行われてきた。
議論の火ぶたを切るようにMoock氏は次のように述べた。「多くのFlashユーザはActionScript 3.0に加えられたいくつかのワークフローの変更に対していまだに不満を抱えています。本当に問題になる変更はごくわずかですが、その蓄積によって典型的なFlashユーザの日常業務には大きな影響を与えています。」
Moock氏は投稿でActionScriptに対する9つの苦情を並べた。
- Flash CS3からon()/onClipEvent()を削除したことで簡単なインタラクティブ作用を作るのが難しくなった。
- ロードされた.swfファイルを(メモリ上から)除去するのが難しくなった。
- DisplayObject.parentへのキャストが必要になったことで親ムービー・クリップの制御が難しくなった。
- getURL()メソッドを削除したことでリンクを生成するのが難しくなった。
- loadMovie()メソッドを削除したことで.swfファイルや画像などをロードするのが難しくなった。
- ActionScript 3.0で追加されたエラー通知によってコーディングが面倒になった。
- ライブラリにあるシンボルに対する動的な参照の方法が直観的でない。
- 自作のテキスト・フィールドやムービー・クリップ、ボタンに対して独自の機能を追加するのが面倒になった。
- duplicateMovieClip()メソッドを削除したことでMovieClipインスタンスのクローンを生成するのが(とても)難しくなった。
Moock氏は合わせてそれぞれの苦情に対する徹底した説明と提案も示している。
Atlanta Flash Community(アトランタにあるFlashのコミュニティ)のLeif Wells氏(リンク)も似たような考えを持っていて、次のように述べている。「ユーザ・グループのメンバにはActionScript 3.0のコードを見せた際に文字通り冷や汗をかく人がいますが、それもそのはずです。今、彼らはFlash Player 10の機能に関心がありますが、ほとんどの人がそれらの機能を使いこなすスキルを持っていません。」
一方で、andCulture(リンク)のInteractive DirectorであるFrancis Lukesh氏(リンク)はFlashの進化に言及して別の見方をしている。曰く、
Macromedia社がFutureSplashを獲得した頃からFlashを使ってきた身であり、さらにデザイン/アニメーションとプログラミングの両方の経験がある身としてAS3によってFlashにおけるActionScriptをより構造化された実装にしようというAdobe社の判断には賛成します。Flashを成長可能なRIA開発のプラットフォームに位置づけるための戦略的な変化だと信じています。
.記事で指摘されたいくつかの機能を提供するようなAPIをツールキットに用意することができない理由は何もありません。それによってデザイナ/アニメータの開発効率は向上する一方で、AS3のアーキテクチャ上の完全性は保持されるでしょう。
Examino社のMatthew Tretter氏(リンク)はデザイナではなく開発者の観点から苦情に対する異議を唱えている。
私はプログラミング言語は非プログラマーでも利用し易くなくてはならないという苦情にはまったく賛成できません(プログラマーにとって使い易くなくてはならないとは思いますが。)。あなたが指摘したいくつかの内容についてはそんなに難しいことだとは思いません。ただ(方法が)違うというだけです。人々がある方法に慣れているからと言って、その方法が必ずしも"より直観的である"とか"より簡単である"という意味ではないのです。時には、普及している方法の方が直観的でないこともあります。"on()"の例はまさにそのような例でしょう。
Flex開発者のSteve氏はちょうど中間の立場をとっていて、次のように述べている。「Flex Builderという贅沢なツールを使うことのできるフル・タイムのAS3開発者としては、これらの問題には賛同できません。ただし、何年にも渡ってFlashを利用してきた者として見れば、言いたいことはよく分かります。」
別のFlash開発者、John Isaacks氏は慣れの問題だとして以下のように述べている。
私は(プログラミングとアニメーション制作のために)バージョン4の頃からFlashを使っています。ActionScriptは私が最初に習得した(プログラミング)言語です。ActionScript 3が世に出たとき、私はゾッとしました。というのも新しいFlashファイルを作成して使い慣れたコードを入力すると多くのエラーが発生したからです。
今はもうActionScriptが過去の限界を超越したということを理解できました。そして、ほとんどの場合にAS3はAS2よりも直観的であるということにも気が付きました(それでもたまに2.0では簡単に出来たことをやろうとしてつまずきますが)。
これらの意見に答えて、Moock氏は以下のように説明している。
率直に言って、私はプログラミング・ツールをとても支持しています。ActionScript 3.0が好きですし、Flashがプラットフォームになることもいいことだと思っています。Adobe社が遂にプログラマー向けにFlex Builder、 ActionScript 3.0プロファイラ、ASDoc、ANTとの統合、データ・サービス、デバッガ、コマンドライン・コンパイラ、Flexフレームワーク、公開されたバグ・データベース、UI開発のためのMXMLなどといった強力なツールを提供することは素晴らしいことだと思います。Adobe社はプログラマの集団に向けて素晴らしい仕事をしています。そして彼らの努力が空前の人数の新しい開発者をFlashに惹きつけています。
技術の発展が続く限り、このような健全な議論は続いていく。
原文はこちらです:http://www.infoq.com/news/2008/09/actionscript3-debate