本文へスキップ

技術士試験(情報工学部門)・情報技術者試験。ファーストマクロ。


Since 2016.4.19

平成30年度 技術士第二次試験問題【必須科目】

T−9

オブジェクト指向プログラムの設計原則に関する次の記述のうち、最も適切なものはどれか。

@ 1つのインターフェースで、多様なメソッドを呼び出せるように作るべきである。

A クラスはインタフェースに依存するのではなく実装に依存すべきである。

B クラスは拡張に対して閉じており、修正に対しては開いていなければならない。

C 派生するクラスは、元となったクラスと置換可能でなければならない。

D 1つのクラスに複数の役割を持たせる。


正解

C


解説

@ 1つのインターフェースは、シンプルな方がよい。インターフェイス分離の原則である。

A クラスは実装に依存するのではなく、インターフェイス (抽象) に依存すべきである。また、上位モジュールは下位モジュールに依存してはならない。依存関係逆転の原則である。

B クラスは拡張に対して開いており、修正に対しては閉じていなければならない。オープン・クローズドの原則である。

C 正しい。リスコフの置換原則である。

D 1つのクラスに1つの役割を持たせる。単一責任の原則である。

T−8 目次 T−10