« 集合知でネットトレンドを予測 BuzzGame | main | 世界最強のajaxアプリ TRIGLAV »
2005年05月08日
Delegateクラスメモ
mx.utils.Delegateをそろそろ覚えなければなぁ、のメモ。
こいつを使うとイベントの発行で遊べるらしい。
イベントの委譲 (Delegateクラス)
EventProxy vs mx.utils.Delegate
Proxying Events with the mx.utils.Delegate Class
投稿者 Taka : 2005年05月08日 17:21
book

bookmark
trackbacks
this entry's trackback URL:
http://www.fladdict.net/cgi-bin/mt3/mt-tb.cgi/145
comment
おはようございます。
このDelegateは、便利ですよね。
簡単に関数のスコープの委譲できるから私は、よく使ってます。
例えば、私の場合、ボタンのclickイベントは
next_btn.addEventListener("click",Delegate.create(this,onClickNextButton));
のようにしています。
関数onClickNextButtonの中では、処理をほかのクラスに委譲してます。
クラス間が疎になるように、実行段階で委譲先を決定するようにしていま
by arkw : 2005年05月09日 12:16
す。
が欠けてしまいました…orz
関数onClickNextButtonの中で、
以下のような感じで、処理をほかのクラスに委譲しています。
class XXX extends MovieClip{
…
function onClickNextButton( e ):Void{
action.doIt();
}
…
}
XXXってクラスがボタン押下したタスクまで責任もってしまうと、XXXの責任が多くなってしまいますよね^^;
クラスは、一つの責任を心がけてコーディングしてます
by arkw : 2005年05月09日 12:23
>arkwさん
おはようございます。Javaのデザパタ本でDelegateパターンみて、あーこれまだ無理・・・ とか思ってずっと使ってなかったんですが、ようやっと勉強スタートです。
これって、argumentとかsetIntervalとかみたいなスコープがズレる系全般で使えるんでしょうか。それともコンポーネント専用?
by Taka : 2005年05月10日 17:58
こんばんは
> これって、argumentとかsetIntervalとかみたいなスコープがズレる系全般で使えるんでしょうか。
>それともコンポーネント専用?
はい。使えます。
私の場合は、変数代入や関数引数として、関数の参照を使いたい場合は、よほどの理由がないかぎりDelegateを使っています。
by arkw : 2005年05月10日 22:50
情報サンクスですー。時間があるときに色々と実験してみますー。
by Taka : 2005年05月15日 09:12