2006-03-01から1ヶ月間の記事一覧

イベントクラスを定義する

EventDispatcher.dispatchEvent() で発行するイベントオブジェクトのクラスを定義すると、より厳密なイベントの管理が可能になる。 例えば、「車が走った」というイベントを考える。この場合、イベントオブジェクトのイベントソースは車で、イベントタイプは…

コメントを活用する

ActionScript のクラスには、必ず JavaDoc スタイルのコメントを書くようにしている。プログラムを流し読みしたときに、コメント部分だけに目を通せば内容が大体把握できるし、関数ブロックの区切りも判りやすい。また、ネストされた if 文や再帰関数のよう…

ActionScript 2.0 Best Practices

Developer Center に ActionScript 2.0 Best Practices というページがあった。ActionScript 2.0 のコーディング標準と一般的なルールを解説している。一部を抜粋してみた。 一般的な命名規則 略語の使い方に注意する。例えば、"sec" だと "section" と "sec…

パッケージ名とインスタンス名が同じだと不具合が生じる

クラスファイルをパッケージに振り分けたら、今まで動いていたものが急に動かなくなった。原因は、パッケージ名とインスタンス名の衝突だった。パッケージ名とインスタンス名が同じだと、そのインスタンスが生成されず、しかも、コンパイルエラーは出ない、…

OOP と トゥイーンアニメーションの連携

OOP を使って Flash サイトを制作するとき、簡単なアニメーションならば ActionScript で書いてしまう事が多い。でも、複雑なトゥイーンアニメーションを表示させる部分も必ずあるわけで……。トゥイーンアニメーションこそが Flash の面白い部分であり強みな…

onLoadProgress はローカルでは機能しない

MovieClipLoader クラスの onLoadProgress イベントは、ローカルだと動作しない。「ダウンロードのシミュレート」ですら、完全に無視されます。リファレンスにもそう書いてあり、バグではなく仕様なのだそうだ。仕方がないので、従来通りタイマーを使って ge…

XML の解析エラーを調べる

今まで、XML の onLoad イベント発生時に seccess の値で処理を振り分けるイディオムは書いていたけれど、解析の成否までは確認していなかった。XML ドキュメントを読み込むこと自体に成功しても、解析の段階で失敗していると、後々の処理で問題が生じてしま…

並列で行うタスクの種類

自分が所属しているチームは、各人が複数のプロジェクトを掛け持ちで進行している事が多い。誰がどのプロジェクト (またはプロジェクト内のタスク) を受け持つかは、時に、ジャンケンで決めたりする。先々月、僕はそのジャンケンで勝利を収め、それ以来ずー…

コレクションとイテレータ

コレクションとイテレータを使用するには mx.utils パッケージ内の Collection と Iterator を実装すればよい。ただ、それらが標準で用意されているかと思いきや、Remoting MX Components のソースコードをダウンロードし、Classes 以下に配置しないといけな…