デザインパターンの中のストラテジパターンを用いて、帳票出力のクラスを図のとおりに設計した。適切な説明はどれか。
ストラテジはアルゴリズムを差し替え可能に切り出す

選択肢
- アクライアントは、使用したいフォーマットに対応する、帳票出力ストラテジクラスのサブクラスを意識せずに利用できる。
- イ新規フォーマット用のアルゴリズムの追加が容易である。
- ウ帳票出力ストラテジクラスの中で、どのフォーマットで帳票を出力するかの振り分けを行っている。
- エ帳票出力のアルゴリズムは、コンテキストクラスの中に記述する。
正解と解説
正解:イ 新規フォーマット用のアルゴリズムの追加が容易である。
ストラテジパターンは、切り替えたいアルゴリズムを共通のインタフェースをもつクラスとして切り出し、利用側は抽象クラス越しに呼び出す設計である。新しいフォーマットに対応したいときは、既存のクラスに手を入れずに新しいサブクラスを追加するだけで済むため、拡張が容易になる。
選択肢ごとの解説
- アどのサブクラスを使うかはクライアント側が選んで注入するのが基本で、完全に意識しないわけではない。
- イ正しい。新しいアルゴリズムをサブクラス追加だけで組み込めるのが利点である。
- ウ抽象クラスの中で条件分岐して振り分ける設計は、ストラテジパターンが避けようとしているものである。
- エアルゴリズムはコンテキストから切り離してストラテジ側に置くのがこのパターンの要点である。
同じ分野の他の問題
- ヒューマンインタフェースをもつシステムにおいて、機能とヒューマンインタフェースの相互依存を弱めることによって、修正性や再…2017年度 春期 午前II 問22
- デザインパターンの一つであるObserverパターンを利用して実現できることはどれか。2016年度 春期 午前II 問22
- 銀行の勘定系システムといった特定の分野のシステムに対して、業務知識、再利用部品、ツールなどを体系的に整備し、再利用を促進…2025年度 秋期 午前II 問20
- 組込みシステム開発におけるソフトウェアプロダクトライン開発の説明として、適切なものはどれか。2025年度 秋期 午前II 問18
- 組込みシステムにおける、ソフトウェアのメモリ安全性(Memory Safety)を考慮した事例として、適切なものはどれか…2025年度 秋期 午前II 問17
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。