今日の復習
Observer パターン
- オブジェクト間の1対他の依存関係を定義する。ある1つのオブジェクトの状態が変化すると、依存しているオブジェクトに通知される。
- 相互にやりとりするオブジェクト間は疎結合を保つべし
- 組み込みのjava.util.ObservableはClassであってInterfaceでないため、継承を使わざるを得ない。
Decorator パターン
- オブジェクトに付加的な責務を動的に付与する。サブクラス化の代替となる柔軟な機能拡張手段
- Java I/O フレームワークはDecoratorパターンを使用している。
- 既存コードを修正する必要なしに振る舞いを拡張できる
Java I/Oって最初はわかりづらいよなぁ。