デザインパターン(GoF)とは?
デザインパターン(GoF)とは、オブジェクト指向設計において繰り返し現れる問題と解決構造を、23種類のパターンとして分類・カタログ化したもの。生成に関するパターン、構造に関するパターン、振る舞いに関するパターンの3群に分かれる。
エンベデッドシステムスペシャリスト試験の過去問では2回出題されています(2016年度〜2023年度)。
でざいんぱたーん
デザインパターン(GoF)の意味
オブジェクト指向設計において繰り返し現れる問題と解決構造を、23種類のパターンとして分類・カタログ化したもの。生成に関するパターン、構造に関するパターン、振る舞いに関するパターンの3群に分かれる。
デザインパターン(GoF)の具体例
インスタンスを1つに制限するSingleton、生成処理を派生クラスに委ねるFactory Method、状態変化を通知するObserverなど。
デザインパターン(GoF)は試験でどう引っ掛けられる?
GoFは「オブジェクト指向設計の再利用可能な構造」のカタログであって、分析パターンやアーキテクチャパターン、開発プロセスのパターンとは区別される。
デザインパターン(GoF)と関連する用語
デザインパターン(GoF)が出た過去問
デザインパターンの一つであるObserverパターンを利用して実現できることはどれか。
正解:あるオブジェクトの状態が変化したときに、それに依存する全てのオブジェクトに自動的に通知する。
要点:Observerは状態変化を依存オブジェクトへ自動通知する
Observerパターンは、観測される側(Subject)と観測する側(Observer)を分離し、状態が変わったときに登録済みの観測者へ一斉に通知する構造である。通知される側の具体的な型を観測される側が知らずに済むので、依存の向きが一方向に整理され、通知先を後から増減できる。イベント通知や画面更新の仕組みに広く使われる。
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 am2 問22(IPA)デザインパターンの中のストラテジパターンを用いて、帳票出力のクラスを図のとおりに設計した。適切な説明はどれか。
正解:新規フォーマット用のアルゴリズムの追加が容易である。
要点:ストラテジはアルゴリズムを差し替え可能に切り出す
ストラテジパターンは、切り替えたいアルゴリズムを共通のインタフェースをもつクラスとして切り出し、利用側は抽象クラス越しに呼び出す設計である。新しいフォーマットに対応したいときは、既存のクラスに手を入れずに新しいサブクラスを追加するだけで済むため、拡張が容易になる。
出典:令和5年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問17(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。