ホーム > 情報処理安全確保支援士試験 > 2024年 秋期
情報処理安全確保支援士試験 2024年 秋期 午前2 問22
ソフトウェアパターンのうち、GoFのデザインパターンの説明はどれか。
ア:Javaのパターンとして引数オブジェクト、オブジェクトの可変性などで構成される。
イ:オブジェクト指向開発のためのパターンであって生成、構造、振る舞いの三つのカテゴリに分類される。(正解)
ウ:構造、分散システム、対話型システム及び適合型システムの四つのカテゴリに分類される。
エ:抽象度が異なる要素を分割して階層化するためのLayers、コンポーネント分割のためのBrokerなどで構成される。
解説
GoFのデザインパターンとは、1994年に出版された「Gang of Four」(GoF)による書籍『Design Patterns: Elements of Reusable Object-Oriented Software』で提唱された、オブジェクト指向設計における代表的な再利用可能な設計方法のことを指します。
GoFのデザインパターンの特徴
-
オブジェクト指向開発のパターンであること
GoFのパターンは、オブジェクト指向の設計において、共通の課題を解決するための設計例や方法論です。 -
三つのカテゴリに分類されること
GoFはデザインパターンを以下の3つのカテゴリに分類しています。- 生成に関するパターン(Creational Patterns)
インスタンス生成の柔軟性や効率性を高めるパターン
例)シングルトン、ファクトリメソッド、抽象ファクトリなど - 構造に関するパターン(Structural Patterns)
クラスやオブジェクトの組み合わせにより大きな構造を作るパターン
例)アダプタ、デコレータ、ファサードなど - 振る舞いに関するパターン(Behavioral Patterns)
オブジェクト間の責任分担やコミュニケーションのパターン
例)観察者(オブザーバ)、コマンド、イテレータなど
- 生成に関するパターン(Creational Patterns)
この分類は、設計パターンを使う際の理解を助け、適材適所でパターンを適用する判断基準にもなります。
選択肢の比較
- ア:Java固有のパターンや引数オブジェクトの話はGoFの説明とは異なります。
- イ:上記の通り、GoFのデザインパターンはオブジェクト指向開発のパターンで、生成・構造・振る舞いの三つに分類されるため正解です。
- ウ:分散システムや対話型システムといったカテゴリはGoFの分類には含まれません。
- エ:LayersやBrokerは一般的なアーキテクチャパターンあるいは分散システム用のパターンで、GoFの分類とは異なります。
以上より、GoFのデザインパターンは「オブジェクト指向開発のためのパターンであって生成、構造、振る舞いの三つのカテゴリに分類される」(選択肢イ)という説明が正しいです。