コンテンツへスキップ
uencoder

Observer Pattern

オブザーバーパターンは1対多の依存関係を定義する。サブジェクトの状態が変化すると、登録されたすべてのオブザーバーに自動的に通知が送られ、疎結合なイベント通知を実現する。

目的

パブリッシュ・サブスクライブ型のイベント通知を実装し、イベントソースとハンドラーを疎結合にする。

メカニズム

サブジェクトはオブザーバーのリストを維持し、状態変化のたびに各オブザーバーのupdateメソッドを呼び出す。オブザーバーは動的に登録・登録解除できる。RxJSやEventEmitterが実装例である。プッシュモデル(データを渡す)とプルモデル(オブザーバーが取得する)がある。

ユースケース

  • イベント駆動の設計
  • MVVMのデータバインディング
  • リアクティブプログラミング

関連用語

References