AS3でショートカット

すげー技考えた。


(実は常識かもしれないけど)


AS3でプログラムを書いているとWEBと違って、シングルトンとか異様に使う。

さらにWEBと違ってインスタンスの過剰生成を押さえる必要がある。


で、僕の場合、アプリケーション1つに一個だけシングルトンクラス(たいていModeLLocatorという名前)を作成して、
色んなところから参照するものは全部ここに登録し、適宜削除する。


ただ、一点めんどくさくて、参照が ModelLocator.instance.hoge とか
ひどいときは ModelLocator.instance.fuga.foo.func() とかになってしまう。


いくらFlexBuilderでコード保管しているとはいえ、めんどくさいなーと思っていたら、
ふとトップレベルクラスはインポート不要なことと、頭が大文字であればクラス名は1文字でも良いことを思い出した。


結果、トップレベルに $.as というファイルをおき、下記のようにしてみた。


package
{
public funal class $
{
public static function get m():ModelLocator
{
return ModelLocator.instance;
}

public static function get b():Bar
{
return $.m.fuga.foo.bar;
}

public static function func():void
{
return $.m.fuga.foo.func();
}
}
}

これで、今後はimport忘れても書かなくていいし、1行がえらく長くなることをさけられる。
何より、開発効率が劇的にかわる v

特にFlexBuilder使ってない人は是非使うべきだ。


注意)パフォーマンスが遅くなるとかは知らない。