デザインパターンとは?でざいんぱたーん
デザインパターンとは、繰り返し現れる設計上の問題と、その解決となるクラス・オブジェクトの組合せ方を、名前を付けて再利用できる形にまとめた定石集。適用の可否は「変更がどこから来るか」で判断し、変化する点をインタフェースの背後に隠せるかどうかが選択の根拠になる。パターン名がそのまま設計レビューの語彙として働く点も効果の一つ。
最終更新:2026-10-06
この語が出る過去問を解く →背景
オブジェクト指向が普及した1990年代、良い設計かどうかの判断は熟練者の暗黙知で、レビューのたびに一から説明が要った。建築のパターン・ランゲージにならい、解決構造へ名前を付けてカタログ化したことで、設計意図を短い語で共有できるようになった。設計の理由を言語化する訓練そのものであり、根拠を書かせる記述・論述式と相性がよい。
具体例
Javaの標準ライブラリでは、BufferedInputStreamがFileInputStreamを包んで機能を足すDecorator、要素の走査をコレクション実装から切り離すIteratorが標準APIとして組み込まれている。SLF4Jはログ実装ごとのAPI差をAdapterで吸収し、Spring FrameworkのBeanは既定でSingletonとして扱われる。
試験での引っ掛け
実行できるライブラリやコードそのものではなく、設計の考え方である。MVCなどのアーキテクチャパターンよりも粒度が小さい。パターン適用が目的化し、単純な処理にまで当てはめると間接層が増えて読みにくくなる点も、設計判断としては減点対象になる。
関連用語
出た過去問
出典:平成29年度 秋期 システムアーキテクト試験 午前Ⅱ 問5(IPA)
ソフトウェアパターンのうち、GoFのデザインパターンの説明はどれか。
正解:オブジェクト指向開発のためのパターンとして生成、構造、振る舞いの三つのカテゴリで分類される。
要点:GoFは生成・構造・振る舞いの三分類のオブジェクト指向パターン
GoF(Gang of Four)のデザインパターンは、オブジェクト指向設計で繰り返し現れる問題への定石を23個にまとめたもので、生成に関するパターン、構造に関するパターン、振る舞いに関するパターンの三つに分類される。アーキテクチャレベルのパターン集とは対象の粒度が異なる点に注意する。
出典:令和元年度 秋期 システムアーキテクト試験 午前Ⅱ 問3(IPA)
ソフトウェアパターンのうち、GoFのデザインパターンの説明はどれか。
正解:オブジェクト指向開発のためのパターンとして生成、構造、振る舞いの三つのカテゴリに分類される。
要点:GoFは生成・構造・振る舞いの三分類のオブジェクト指向パターン
GoF(Gang of Four)のデザインパターンは、オブジェクト指向設計で繰り返し現れる問題への定石を23個にまとめたもので、生成に関するパターン、構造に関するパターン、振る舞いに関するパターンの三つに分類される。アーキテクチャレベルのパターン集とは対象の粒度が異なる点に注意する。
出典:令和4年度 春期 システムアーキテクト試験 午前Ⅱ 問2(IPA)
ソフトウェアパターンのうち、GoFのデザインパターンの説明はどれか。
正解:オブジェクト指向開発のためのパターンであって、生成、構造、振る舞いの三つのカテゴリに分類される。
要点:GoFは生成・構造・振る舞いの3分類からなる設計パターン集
GoF(Gang of Four)のデザインパターンは、オブジェクト指向設計で繰り返し現れる23の解法をまとめたもので、生成に関するパターン・構造に関するパターン・振る舞いに関するパターンの三つに分類される。クラスやオブジェクトの粒度を扱う設計レベルのパターン集であり、システム全体の骨格を扱うアーキテクチャパターンとは階層が異なる。
出典:令和4年度 春期 システムアーキテクト試験 午前Ⅱ 問5(IPA)
デザインパターンの中のストラテジパターンを用いて、帳票出力のクラスを図のとおりに設計した。適切な説明はどれか。
正解:新規フォーマット用のアルゴリズムの追加が容易である。
要点:アルゴリズムを別クラスに委譲し追加・切替を容易にするのがストラテジ
ストラテジパターンは、切り替えたいアルゴリズムを共通のインタフェースをもつ別クラス(具象ストラテジ)として実装し、利用側のコンテキストはそのインタフェース経由で呼び出す構造をとる。新しい出力形式を増やしたいときは、共通インタフェースを実装したサブクラスを1つ追加するだけでよく、コンテキストや既存クラスに手を入れずに済む。
出典:令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問6(IPA)
デザインパターンの説明はどれか。
正解:再利用性や柔軟性の高いプログラムを設計するために、参考となるオブジェクトの組合せ方をパターンとして分類したものであり、代表的なパターン集としてGoFパターンがある。
要点:デザインパターンはオブジェクトの組合せ方の定石集
デザインパターンは、オブジェクト指向設計で繰り返し現れる問題に対し、クラスやオブジェクトをどう組み合わせて解決するかを型として整理したものである。GoF(デザインパターンを広めた4人の著者)の23パターンが代表的で、再利用性・柔軟性の高い設計を効率よく作るための共通語彙としても機能する。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。