Flash ActionScript3の仕様変更 24
ストーリー by mhatta
Java風味 部門より
Java風味 部門より
zyass曰く、"先日のFlash ActionSctipt3デビューセミナーにおいて、次期ActionScriptの概要が説明された。
このセミナーで話が出たのだが、Flashを初めて触る人の入り口とも言えるボタン or シンボルに対してのon(event)の記述がActionScript3では使用出来なくなるらしい。フレームへの記述方法もActionscript3では異なるようだ。
この変更について、すでに一部のFlash関係掲示板等で話題になっているが、セミナーでは、初心者、ライトユーザー等の多くの意見がAdobeに届けば、これらの記述をActionscript3でも可能とするか考慮するとのこと(参考: FLASH-Japanの関連フォーラム)。
デザイナー寄り、プログラマー寄りの2層が混在するFlashユーザ、色々な意見が出そうですが、皆様はいかがでしょうか。"
方向的にはいいんじゃないかな (スコア:4, 参考になる)
外野的に見てですが、イベント処理の中途半端な言語組み込み機能 [nifty.com]を廃止して、ライブラリアプローチ [macromedia.com]に変えたように見えました。ActionScript3もモジュール機能を強化したわけですし、言語から独立させる方針を採ること自体は悪くないと思います。
ただ、addEventListenerというAPI設計がいいかどうかという点では微妙かもしれません。URLLoaderの例 [macromedia.com]を見てもいまいちですし。
Re:方向的にはいいんじゃないかな (スコア:2)
W3C標準の( DOM Level 3 Events) [w3.org]APIですね。
標準にAPIを合わせることは良いと思うけど。。
Re:方向的にはいいんじゃないかな (スコア:0)
> W3C標準の( DOM Level 3 Events)APIですね。
DOMのわりにはSpriteとかでもgetAttributeとかはないよね。しかし、この設計のよしあしというは、リンクされていたURLLoaderの例を見て、それが使いやすいと思えますか?ってことではないのかな。
そもそも (スコア:2, すばらしい洞察)
と思ってる現役制作者
それよりも根本的なタイムライン指向を見直して欲しかったりする
mc内部以外はすべてシンボルの配置的構造(タイムライン無し)にしてくれた方がよっぽど嬉しい
その方がシーンが抜本的にモードを切り替えるベースになるし、ASの記述場所も書き散らさずまとまる様になる。
同じ様な様式のインターフェイスなのに作る人によって内部構造が全く違うなんてのも随分減らせる。
Re:そもそも (スコア:1)
それは本当に、Flashで作る必要のあるものなのか?
>mc内部以外はすべてシンボルの配置的構造(タイムライン無し)にしてくれた方がよっぽど嬉しい
もしそう思うなら、ムービークリップの中身だけ、Flashで作ればいいのではないだろうか?
Re:そもそも (スコア:0)
Re:そもそも (スコア:0)
ある仕事のために、まさに昨日からASを勉強し始めた他言語(複数)のプログラマはどうすればいいですか(泣
# 覚えても無駄になるのだろうかorz
Re:そもそも (スコア:0)
AS2とAS3両方覚えればいいじゃん
Re:そもそも (スコア:1)
ご飯が無ければお菓子を(ry
And now for something completely different...
Re:そもそも (スコア:0)
ちゅーてもですね、今までC,C++,Java,Perl,PHP,SQL,JavaScript,Lingoと関連ライブラリやフレームワーク、言語じゃないけど各種RFCにプロトコル,HTML,XML/RSS,CSS,PostgreSQL,MySQL,サーバーの設定から各ブラウザのバグやら癖やらと・・・
# 他にもマイナーな言語も3,4種・・・
するってーとですね、モジュール化したりMVCモデル採用してシステム開発を分業できるように設計しても、なぜか一人でデータベースの設計からシステムマネージメントから通信プロトコル設計から・・・言語や規格や仕様のバージョンの違いも個人が吸収という事態
# 仕
Re:そもそも (スコア:0)
on(event)はもう不要では (スコア:2)
この書式がお手軽なのはそうだと思うけど、
なくなってどれだけ困るかというと、そんなに
困らないのでは。
例えば、ActionScript 2.0(Flash 8)以前では、
ボタンとかMovieClipに、
on(press) {
//クリック時の処理
}
と書いていたのが、
ActionScript3.0からは、
theButton.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void {
// クリック時の処理
}
と書かなければいけなくなったけど、前者の方がシンプルなものの
…結局どちらともコピペ出来る程度だし、それほどの差とは思えない。
逆にon(event)などを廃止すれば、イベントを処理する仕方が一通りだけしかなくなって、非常にすっきりする。
ActionScript 3.0はものすごく変わっていて、
(このon(event)の件もだけど)、
_xも_yも_rootもないとか、
createEmptyMovieClip()もattachMovie()もcreateTextField()もないとか、深度の考え方も変わったとか、
言語が新しくなったのと*同時に*、APIが刷新された。
他にもいろいろ今までの慣れが通用しないところがあるから、on(event)形式での記述だけ残してもあんまりありがたみがないと思う。
# 言語が強力になるのは大歓迎で、今のところ
# ActionScript3.0に不満は全くないけど、
# APIへの慣れが全く通用しない世界になってしまったのでさすがに困ったし、
#なんでAPIまで変えるのかとしばらく思ったし苦しかった。
#やっと慣れた今ではかなり気に入っているけど
無くてもいいんじゃない? (スコア:1)
これから始める人にとってはあっても無くても変わらないと思う。
壁は高い (スコア:0)
Re:壁は高い (スコア:2, 参考になる)
バージョンいくつにあわせてパブリッシュ(コンパイルみたいなもの)か設定できます。
例えば、
AS2は、ver.7からなので、ver.6(MX)ようには、AS2特有の関数は使えなかったりします。
#まわりの状況みると、ただでさえAS2のオブジェクト指向化で脱落、劣等生化が結構いたのだが、AS3だとon eventまで使えなくなるとは。。他の言語でいえば、print文がつかえなくなりましたって言ってる感じでしょうか。
Re:壁は高い (スコア:1)
この部分は、とても同意できる。
タレこみに
>デザイナー寄り、プログラマー寄りの2層が混在するFlashユーザ
という文章があるけれども、ココ2年ぐらいで、デザイナー寄りの製作者ってのはかなり減った気がする。
>print文がつかえなくなりましたって言ってる感じ
もしたとえるなら、JavaScriptで、onclick() のトリガーを使わずに、EventListener経由でクリックを拾うようにしましょう、って言ってるようなものだと思う。
Re:壁は高い (スコア:1)
そーかな~?
自分の周囲だけかも知れないけれど、スクリプトがさっぱりのデザイナと、デザインがさっぱりのプログラマもまだまだ多い気がする。
ちゃんと分業すりゃいいんだろうけど、そこまで予算がある仕事も少ないしね~。
Re:壁は高い (スコア:3, 参考になる)
Webの作成もするデザインスタジオみたいな所で、Flashは内製から外注に切り替えた所もいくつも知ってる。
大体、MX2004の頃だったと思う。
スクリプトがさっぱりなデザイナーが、ちょっと込み入ったスクリプトが必要な仕事を(間違って)受けちゃうと、悲惨なことになるからね。
逆ならどうにでもなるんだろうけど。
もっと個人的な話だと、DirecterでLingoでマルチメディアみたいな時代から切磋琢磨していた友人も、その頃看板おろしちゃって、ちょっと悲しかった。
Re:壁は高い (スコア:0)
Re:壁は高い (スコア:1, 参考になる)
Flash 9 では、ActionScript 1/2用のVMとActionScript 3用のVMが両方のるようです。
Re:壁は高い (スコア:0)
ActionScript->JavaBytecodeコンパイラにでもしてよ>Adobe
Re:壁は高い (スコア:0)
そもそも、AS2のコードはAS3で動かないのでは?
シンボル? (スコア:0)
ボタンとシンボルは並列の概念ではないのですが……
それを言うならボタン or ムービークリップ?
まず、内部を直せ (スコア:0)
なんて書かれてるけど、付属のサンプルやらなんやらはみんなon〜で作ってある。
使えねー>Adobe