オブザーバーパターン
オブジェクト(サブジェクト)が「オブザーバー」のリストを保持し、自身が変化したときに通知するパターン。リアクティブプログラミング、イベントシステム、MVCの基盤である。
1994年のGang of Fourの古典的パターン。実装例は、DOMのaddEventListener、Rx Observable、Pub/Sub、Vue/Reactのリアクティビティ、JavaのPropertyChangeListenerなど。リスクは、オブザーバーが購読解除を忘れることによるメモリリーク(weakrefを使った方法で軽減できる)。現代的な代替は、シグナル(SolidJS)、アトム(Recoil/Jotai)、自動依存関係追跡だ。