メインコンテンツへスキップ
システムアーキテクト令和4年度 春期午前II5

令和4年度 春期 システムアーキテクト 午前II5

難度標準

デザインパターンの中のストラテジパターンを用いて、帳票出力のクラスを図のとおりに設計した。適切な説明はどれか。

選択肢

クライアントは、使用したいフォーマットに対応する,帳票出力ストラテジクラスのサブクラスを意識せずに利用できる。
新規フォーマット用のアルゴリズムの追加が容易である。
帳票出力ストラテジクラスの中で,どのフォーマットで帳票を出力するかの振り分けを行っている。
帳票出力のアルゴリズムは,コンテキストクラスの中に記述する。

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

ストラテジパターンは、アルゴリズムファミリーを定義し、それぞれをカプセル化して、それらを交換可能にするデザインパターンです。これにより、アルゴリズムが独立して変化しても、それを利用するクライアントに影響を与えずに済みます。

詳細Layer 2

イが正解となるのは、ストラテジパターンの特性として、新しいフォーマット(アルゴリズム)を追加したい場合、帳票出力ストラテジクラスの新しいサブクラスを作成するだけで対応できるためです。これにより、既存のコードを変更することなく、柔軟に機能拡張が可能です。

補足Layer 3

アは、ストラテジパターンの利点ではありますが、クライアントが「意識せずに」利用できるというよりは、具体的にどのストラテジ(フォーマット)を利用するかを選択・設定する必要があるため、厳密には不適切です。

ウは、帳票出力ストラテジクラスではなく、コンテキストクラス(Context)が、どのフォーマットで帳票を出力するかというストラテジの選択・委譲を行う役割を担います。

エは、帳票出力のアルゴリズムは、ストラテジインターフェース(Strategy)を実装した個々のサブクラス(Concrete Strategy)の中に記述されます。コンテキストクラスは、これらのストラテジを保持し、実行を委譲する役割です。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「ソフトウェア設計」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
本問の分野で問われる代表的な知識・用語の整理。
学習の進め方
正解/誤答の選択肢ごとに「なぜ正しい / なぜ違うのか」を1行ずつ言語化すると定着する。
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

ソフトウェア設計 の他の問題