IPA公式正解:ア あるオブジェクトの状態が変化したときに,それに依存する全てのオブジェクトに自動的に通知する。
※ 正解はIPA公表の解答です。解説は当サイトが生成AIを用いて作成しています。誤りにお気づきの場合はお問い合わせください。
【解説】正解は選択肢【ア】です。Observerパターンは、GoF(Gang of Four)による振る舞いに関するデザインパターンの一つです。観察対象のオブジェクト(Subject)の状態が変化した際に、登録されているすべての観察者オブジェクト(Observer)に対して自動的に通知を行い、疎結合なイベント駆動構造を実現します。
【詳細解説】■ 本問の核心・解法のポイント
GoFデザインパターンの1つである「Observer(観察者)パターン」の目的と適用例を理解しているかを問う問題です。発行-購読(Publish/Subscribe)の関係をオブジェクト間で構築し、状態変化の通知元と通知先を疎結合に保つ目的で多用されます(GUIのイベントリスナやMVCモデルなど)。
・各選択肢の徹底解説:
・ア:【選択肢ア★】観察対象のオブジェクトの状態変化を、依存するすべての観察者オブジェクトに自動通知する仕組みであり、Observerパターンの説明として適切です。
・イ:オブジェクトを別のオブジェクトでラップして機能を動的に追加・拡張するのは、「Decoratorパターン」の説明であるため誤りです。
・ウ:特定のクラスのインスタンスがシステム全体で常に1つしか生成されないことを保証するのは、「Singletonパターン」の説明であるため誤りです。
・エ:内部構造(配列やリスト等)に関わらず、集約された要素へ同一のインタフェースで順番にアクセスするのは、「Iteratorパターン」の説明であるため誤りです。
よって正解はアです。