ActoinScriptをいじり始めて半年ぐらいになりますが、まだまだ記法に馴染めません。
特にイベントをいちいち追加しなければならないところなどもどかしく、ボタンなんてクリックするためにあるんだからクリックイベントのメソッドぐらい用意して置けよなんて思うわけです。
btn.addEventListener( MouseEvent.CLICK, btn_onClick ); function btn_onClick( e:MouseEvent ):void{ trace( e.target.name ); }
一般的なマニュアルではこうなっていますが、いちいち関数名を考える身にもなってくれと、どの道、このイベント以外からは参照しない処理だと、いちいち分けないといけない意味がわからないのです。
つまりこういうこと。
btn.addEventListener( MouseEvent.CLICK, function( e:MouseEvent ):void{ trace( e.target.name ); } );
関数名の重複を怖がる必要はなくなりました。
JavaScriptが頭にあると、スクリプトは外部ファイルに置くべきという理屈から、いちいち関数を用意していたと思うのですが、パブリッシュが前提のActionScriptでは不要の作業。
よく考えればどうってこと無いのですが、解説サイトによっては「関数名の重複を避けるためにパッケージ化」しますなどと、むだな手間を掛けているのを見るとうんざり。
無名関数をもっと使いこなしたほうがいい気がします。
それに、処理速度とか、オブジェクト指向だとかそっちのけで、Perl使いとしてはこっちのほうが見やすいのです。
でめたしでめたし。