令和6年度 秋期 プロジェクトマネージャ試験 午前II 問13

ソフトウェアパターンのうち,GoFのデザインパターンの説明はどれか。

解答・解説

正解: イ. オブジェクト指向開発のためのパターンであって,生成,構造,振る舞いの三つのカテゴリに分類される。

GoF (Gang of Four) のデザインパターンは、オブジェクト指向ソフトウェア開発において、よく発生する設計上の問題とその解決策を23のパターンとして分類・カタログ化したものです。これらのパターンは、目的に応じて以下の3つのカテゴリに分類されます。

  1. 生成(Creational)パターン: オブジェクトの生成プロセスに関するパターン
  2. 構造(Structural)パターン: クラスやオブジェクトの構成に関するパターン
  3. 振る舞い(Behavioral)パターン: オブジェクト間の責任分配や通信に関するパターン

したがって、これらの3つのカテゴリに分類されるとしている選択肢イが正解となります。

各選択肢の解説

  • ア: 引数オブジェクトやオブジェクトの可変性などは、特定のプログラミング言語(Javaなど)におけるイディオムやリファクタリング手法に関する説明であり、GoFのデザインパターンではありません。
  • イ: 正解。GoFのデザインパターンのカテゴリ(生成、構造、振る舞い)に関する正しい説明です。
  • ウ: 構造、分散システム、対話型システム、適合型システムなどのカテゴリに分類されるのは、POSA (Pattern-Oriented Software Architecture) などのアーキテクチャパターンの説明です。
  • エ: Layers(階層化)やBroker(分散コンポーネント通信)は、ソフトウェア全体の構造を決定するアーキテクチャパターンの代表例であり、GoFのデザインパターンではありません。

Spineチーム