情報処理安全確保支援士試験 令和6年秋期午前Ⅱ GoFのデザインパターン

出典:令和6年秋期 午前Ⅱ 問22 分野:システム開発技術 / 設計
ソフトウェアパターンのうち,GoFのデザインパターンの説明はどれか。
  • ア:Javaのパターンとして,引数オブジェクト,オブジェクトの可変性などで構成される。
  • イ:オブジェクト指向開発のためのパターンであって,生成,構造,振る舞いの三つのカテゴリに分類される。
  • ウ:構造,分散システム,対話型システム及び適合型システムの四つのカテゴリに分類される。
  • エ:抽象度が異なる要素を分割して階層化するためのLayers,コンポーネント分割のためのBrokerなどで構成される。
解説

GoFのデザインパターンは、オブジェクト指向設計でよく現れる設計上の問題に対する解決策を整理したものです。

GoFの23個のデザインパターンは、生成に関するパターン・構造に関するパターン・振る舞いに関するパターンの三つのカテゴリに分類されます。

パターン 内容
生成 ・Abstract Factory ・Builder ・Factory Method ・Prototype ・Singleton
構造 ・Adapter ・Bridge ・Composite ・Decorator ・Facade ・Flyweight ・Proxy
振る舞い ・Chain of Responsibility ・Command ・Interpreter ・Iterator ・Mediator ・Memento ・Observer ・State、Strategy ・Template Method ・Visitor

したがって、が適切です。

❌他選択肢が誤りの理由
ア:Javaのパターンとして,引数オブジェクト,オブジェクトの可変性などで構成される。
⇒GoFのデザインパターンの説明ではありません。GoFはJava固有のパターンではなく、オブジェクト指向設計に関する汎用的なパターンです。
ウ:構造,分散システム,対話型システム及び適合型システムの四つのカテゴリに分類される。
⇒GoFではなく、アーキテクチャパターンの分類に関する説明です。GoFは生成、構造、振る舞いの三分類です。
エ:抽象度が異なる要素を分割して階層化するためのLayers,コンポーネント分割のためのBrokerなどで構成される。
⇒LayersやBrokerはアーキテクチャパターンの例です。GoFのデザインパターンには該当しません。
TSUNAGARU-ADVICE

まず押さえたいこと

GoFのデザインパターンは、オブジェクト指向開発でよく現れる設計上の課題に対する解決策を整理したもので、生成、構造、振る舞いの三つのカテゴリに分類されます。

迷ったときの判断軸

GoFのパターンは、Factory MethodやSingletonのような生成に関するもの、AdapterやCompositeのような構造に関するもの、ObserverやStrategyのような振る舞いに関するものに分けられます。したがって、オブジェクト指向開発の設計パターンとして整理すると判断しやすくなります。

科目Bにつなげるために

科目Bでは、デザインパターン名を覚えるだけでなく、どの設計課題を解決するためのパターンなのかを問われます。生成、構造、振る舞いのどの分類に属するかを意識して、設計意図と結び付けて理解しておきましょう。※開発関連試験向け