テクノロジ系2 / 25問
システムアーキテクト試験 令和7年度 春期 午前II 問2
オブジェクト指向設計における設計原則の説明のうち、開放・閉鎖原則のものはどれか。
選択肢を押すと答え合わせができます。
正解と解説を見る
【正解】エ
開放・閉鎖原則、すなわちOCPは、「拡張に対して開いており、修正に対して閉じている」ようにソフトウェアを設計するという原則です。新しい機能を追加できる一方で、その追加によって既存のモジュールを直接修正したり、他のモジュールへ変更の影響を波及させたりしない構造を目指します。例えば、共通のインタフェースを定義し、新機能を別の実装クラスとして追加すれば、既存の利用側を変更せずに振る舞いを拡張できます。この考え方を説明しているエが正解です。
アの説明は誤りです。これは単一責任原則、すなわちSRPの説明です。一つのクラスが複数の変更理由をもたないように、責務を一つに絞ります。
イの説明は誤りです。これはインタフェース分離原則、すなわちISPの説明です。利用者に不要なメソッドへの依存を強制しないよう、インタフェースを適切な単位に分割します。
ウの説明は誤りです。これは依存性逆転原則、すなわちDIPの説明です。上位と下位のモジュールが、具体的な実装ではなく抽象に依存するようにします。
【ポイント】 OCPでは、既存コードを書き換えるのではなく、実装の追加による機能拡張を目指します。 単一責任、開放・閉鎖、リスコフの置換、インタフェース分離、依存性逆転をまとめてSOLID原則と呼びます。 各原則は、名称だけでなく代表的な説明との対応を覚えてください。
出典:令和7年度 春期 システムアーキテクト試験 午前II 問2
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。
この回の25問を、アプリで通しで解く
- 本番と同じ問題数・制限時間で通し演習(模試モード)
- 間違えた問題は自動で「復習すべき問題」に回る
- 解説で分からない点はAIに質問できる