クラス名・変数名に迷ったら書き込むスレ。Part12
■ このスレッドは過去ログ倉庫に格納されています
0595デフォルトの名無しさん
2008/08/30(土) 12:32:56Observerパターンに関するものです。
class Sub < Observable
def func
notify( "foo", "I was updated" ) # ObserverのObserver#foo( "I was updated" ) を呼び出す
end
end
class Observer
def foo( str )
print "Observer observed <" + str + "> "
end
end
Sub observable, observable2
Observer observer
observable.add_observer( observer ) # observableを観測するインスタンスとしてobserverを設定
observable.func() # "Observer observed <I was updated>" と出力表示される
observer2.HOGE( observer )
observer2.func() # "Observer observed <I was updated>" と出力表示される
HOGEは observable2からnotifyされたものすべてをobservableからもnotifyされたことにするメソッドです
observable2のメソッド中でnotify( str1, str2 )を呼び出すとobservableのメソッドからnotify( str1, str2 )を呼び出したのと 同じ効果が生じ、結果、observerのメソッド名がstr1のメソッドを引数str2で呼び出します。
HOGEの名前が決まりません。どうかお願いします。
■ このスレッドは過去ログ倉庫に格納されています