システムアーキテクト暗記無料で始める

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

頻出システムアーキテクト試験/2022年度 春期 午前Ⅱ 問5/ソフトウェア方式設計 / 設計パターン

クラス図。左上に「コンテキスト」クラス(属性・操作なし)があり、右にある「帳票出力ストラテジ」クラス(操作:+帳票出力())とコンポジション(コンテキスト側が黒塗りでない菱形、矢印は帳票出力ストラテジ側を指す)で結ばれている。「帳票出力ストラテジ」クラスの下には、「PDF帳票出力ストラテジ」クラスと「HTML帳票出力ストラテジ」クラス(いずれも操作:+帳票出力())が、それぞれ白抜き三角矢印(汎化・継承)で「帳票出力ストラテジ」クラスに接続されている。右上には凡例としてクラス図の表記(クラス名/属性/操作の3段構成)が示されている。
クラス図。左上に「コンテキスト」クラス(属性・操作なし)があり、右にある「帳票出力ストラテジ」クラス(操作:+帳票出力())とコンポジション(コンテキスト側が黒塗りでない菱形、矢印は帳票出力ストラテジ側を指す)で結ばれている。「帳票出力ストラテジ」クラスの下には、「PDF帳票出力ストラテジ」クラスと「HTML帳票出力ストラテジ」クラス(いずれも操作:+帳票出力())が、それぞれ白抜き三角矢印(汎化・継承)で「帳票出力ストラテジ」クラスに接続されている。右上には凡例としてクラス図の表記(クラス名/属性/操作の3段構成)が示されている。

選択肢

正解と解説

正解:イ 新規フォーマット用のアルゴリズムの追加が容易である。

ストラテジパターンは、切り替えたいアルゴリズムを共通のインタフェースをもつ別クラス(具象ストラテジ)として実装し、利用側のコンテキストはそのインタフェース経由で呼び出す構造をとる。新しい出力形式を増やしたいときは、共通インタフェースを実装したサブクラスを1つ追加するだけでよく、コンテキストや既存クラスに手を入れずに済む。

この問題を解く(同じ分野をあと9問) →

選択肢ごとの解説

出典:令和4年度 春期 システムアーキテクト試験 午前Ⅱ 問5(IPA)原本の紙面を見る(IPA 問題冊子より)

この問題に出た用語

同じ分野の他の問題

最終更新:2026-10-06/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。