IPA過去問ドリル

平成30年度 春期 システム監査技術者試験 午前Ⅱ 問22

テクノロジ/開発技術

デザインパターンの一つであるObserverパターンを利用して実現できることはどれか。

出典:平成30年度 春期 システム監査技術者試験 午前Ⅱ 問22

正解:ア

解説

Observerパターンとは,あるオブジェクト(Subject)の状態が変化したときに,それに依存する(観察している)全てのオブジェクト(Observer)に対して自動的に通知を行う仕組みを実現するデザインパターンである。既存の機能をもつオブジェクトを新しいオブジェクトでラップして動的に機能を拡張するのはDecoratorパターン,クラスのインスタンスが一つしか存在しないことを保証するのはSingletonパターン,実装の異なるコンテナに同一のインタフェースでアクセスするのはIteratorパターンの説明であり,いずれもObserverパターンではない。

選択肢ごとの解説

  • 正しい。あるオブジェクトの状態が変化したときに,それに依存する全てのオブジェクトに自動的に通知することは,Observerパターンを利用して実現できることです。
  • 誤り。ある機能をもつオブジェクトを新しいオブジェクトでラップし,動的に機能を拡張することは,Decoratorパターンの説明であり,Observerパターンではありません。
  • 誤り。あるクラスのインスタンスが一つしか存在しないことを保証することは,Singletonパターンの説明であり,Observerパターンではありません。
  • 誤り。配列や集合のような実装の異なるコンテナに対し,同一のインタフェースでアクセスすることは,Iteratorパターンの説明であり,Observerパターンではありません。
システム監査技術者の過去問を演習モードで解く