プロジェクトマネージャ 2024年 午前2 問13
問題文
ソフトウェアパターンのうち、GoFのデザインパターンの説明はどれか。
選択肢
ア:Javaのパターンとして、引数オブジェクト、オブジェクトの可変性などで構成される。
イ:オブジェクト指向開発のためのパターンであって、生成、構造、振る舞いの三つのカテゴリに分類される。(正解)
ウ:構造、分散システム、対話型システム及び適合型システムの四つのカテゴリに分類される。
エ:抽象度が異なる要素を分割して階層化するためのLayers、コンポーネント分割のためのBrokerなどで構成される。
🔒 解説は解答すると表示されます
GoFデザインパターン【午前2解説】
正解の理由
GoF(Gang of Four)のデザインパターンは、オブジェクト指向開発で繰り返し現れる設計上の課題と、その解決方法をまとめたものです。パターンは、生成・構造・振る舞いの三つのカテゴリに分類されます。
したがって、この説明に当てはまるのはイです。
解法ステップ
- 「GoF」がオブジェクト指向設計に関するデザインパターンを指すことを確認します。
- GoFの分類である「生成・構造・振る舞い」を思い出します。
- 三つのカテゴリを挙げている選択肢を選びます。
選択肢別の誤答解説
- ア:引数オブジェクトやオブジェクトの可変性などに関する説明です。GoFの三分類を示していません。
- イ:オブジェクト指向開発のためのパターンであり、「生成・構造・振る舞い」に分類されるというGoFの特徴を正しく説明しています。
- ウ:「構造・分散システム・対話型システム・適合型システム」という分類は、GoFの分類ではありません。
- エ:LayersやBrokerは、システム全体の構成に関するアーキテクチャパターンの例です。GoFのデザインパターンとは対象や分類が異なります。
よくある誤解
- 「構造」という語が含まれていればGoFだと思い込むことがあります。分類が生成・構造・振る舞いの三つそろっているか確認しましょう。
- GoFのデザインパターンと、システム全体の構成を扱うアーキテクチャパターンを混同しがちです。
- GoFは特定のプログラミング言語の機能や文法をまとめたものではなく、設計上の解決策を整理したものです。
補足コラム
GoFの三分類は、パターンが主に何を解決するかで整理されています。
- 生成パターン:オブジェクトの生成方法を扱います。例:Factory Method、Singleton
- 構造パターン:クラスやオブジェクトの組み合わせ方を扱います。例:Adapter、Composite
- 振る舞いパターン:オブジェクト間の役割分担や連携を扱います。例:Observer、Strategy
FAQ
Q. GoFのパターンは全部で何種類ですか?
A. 古典的なGoFの書籍では、デザインパターンを23種類紹介しています。
A. 古典的なGoFの書籍では、デザインパターンを23種類紹介しています。
Q. LayersやBrokerもデザインパターンですか?
A. 広い意味では設計上の再利用可能な解決策ですが、GoFの23パターンではなく、主にアーキテクチャパターンとして扱われます。
A. 広い意味では設計上の再利用可能な解決策ですが、GoFの23パターンではなく、主にアーキテクチャパターンとして扱われます。
関連キーワード: GoF、生成パターン、構造パターン、振る舞いパターン、アーキテクチャパターン

\ せっかくなら /
プロジェクトマネージャを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

