
世の中の
Observer
パターンを調べる
Observer
パターンは最もよく使われるパターンの
1
つで、多くのライブラリやフレームワー
クでよく使われています。例えば、
JDK
(
Java Development Kit
)では
JavaBeans
と
Swing
ラ
イブラリはどちらも
Observer
パターンを利用しています。
Observer
パターンは
Java
に限った
ものでもありません。他の例を挙げると、
JavaScript
のイベント、
Cocoa
、
Swift
の
KVO
(
Key-
Value Observing
)プロトコルでも使われています。デザインパターンを知っていることの利
点の
1
つは、お気に入りのライブラリの設計の背後にある動機を認識し、すぐに理解できる
ことです。
Swing
ライブラリを簡単に調べ、
Observer
パターンをどのように使っているか確
認してみましょう。
Swing
ライブラリ
Swing
は
Java
のユーザインタフェース用の
GUI
ツールキットであることはご存知だと思い
ます。
Swing
の最も基本的なコンポーネントの
1
つが
JButton
クラスです。
JButton
のスーパー
クラス
AbstractButton
を調べると、リスナを追加
/
削除する多数のメソッドがあるのがわかり
ます。これらのメソッドは、オブザーバの追加や削除を実行できます。
Swing
ではオブザー
バはリスナと呼ばれ、
Swing
コンポーネントで発生したさまざまな種類のイベントを監視し
ます。例えば、
ActionListener
は、ボタンで発生する可能性のあるあらゆる種類の動作(ボタ ...