解説
ソフトウェアパターンのうち、GoFのデザインパターンの説明はどれか【午前2 解説】
要点まとめ
- 結論:GoFのデザインパターンは「生成」「構造」「振る舞い」の三つのカテゴリに分類される。
- 根拠:GoF(Gang of Four)とは、デザインパターンの基本書籍を著した4人の著者であり、オブジェクト指向設計のパターンを体系化した。
- 差がつくポイント:GoFパターンはJava固有ではなく、オブジェクト指向全般に適用可能である点を理解することが重要。
正解の理由
選択肢イは、GoFのデザインパターンの特徴を正確に表しています。GoFは「生成(Creational)」「構造(Structural)」「振る舞い(Behavioral)」の3カテゴリに分類し、オブジェクト指向設計の問題を解決するための再利用可能な設計手法を示しています。これに対し、他の選択肢はGoFの定義や分類と異なり、誤りです。
よくある誤解
GoFパターンはJava固有のものではなく、言語に依存しない設計パターンである点を誤解しやすいです。
また、GoFの分類は3つであり、4つやそれ以上のカテゴリに分けるのは誤りです。
解法ステップ
- GoF(Gang of Four)とは何かを確認する。
- GoFのデザインパターンの分類を覚える(生成、構造、振る舞いの3つ)。
- 選択肢の説明がGoFの定義に合致しているかを比較する。
- Java固有や異なる分類体系の説明は除外する。
- 正しい分類を示す選択肢を選ぶ。
選択肢別の誤答解説
- ア: Java固有のパターンとして説明しているが、GoFは言語非依存の設計パターン集であり誤り。
- イ: 正解。GoFのデザインパターンは生成、構造、振る舞いの3カテゴリに分類される。
- ウ: 4つのカテゴリに分類するとしているが、GoFは3つのカテゴリであり誤り。
- エ: LayersやBrokerなどのアーキテクチャパターンの説明であり、GoFのデザインパターンとは異なる。
補足コラム
GoFのデザインパターンは1994年にErich Gammaら4人の著者によって提唱され、ソフトウェア設計のベストプラクティスとして広く認知されています。代表的なパターンには「シングルトン」「ファクトリーメソッド」「デコレータ」「ストラテジー」などがあり、設計の柔軟性や再利用性を高めるために活用されます。
FAQ
Q: GoFのデザインパターンはどのプログラミング言語で使えますか?
A: GoFのパターンは言語非依存で、JavaやC++、Pythonなど多くのオブジェクト指向言語で利用可能です。
Q: GoFの3つのカテゴリは何ですか?
A: 「生成(オブジェクトの生成方法)」「構造(クラスやオブジェクトの構成)」「振る舞い(オブジェクト間の通信や責任)」の3つです。
関連キーワード: デザインパターン, GoF, オブジェクト指向, 生成パターン, 構造パターン, 振る舞いパターン