問47
頻出度★★★
オブジェクト指向設計の特徴はどれか。
この問題の解説と、これまでの解答の記録です。
オブジェクト指向設計の特徴はどれか。
逆である。オブジェクト指向設計はクラスの継承や部品化されたオブジェクトの再利用を通じて、再利用性・保守性・生産性を高めることを主要な狙いとしている。「向上することはない」という記述は誤り。
正解 オブジェクト指向設計では、データ (属性) とそれを操作する手続き (メソッド) を一つのオブジェクトにまとめ、内部を外部から隠す「カプセル化 (情報隠蔽)」を行う。利用者側はオブジェクトが公開しているインタフェース、すなわちメッセージを送ることだけで機能を呼び出せ、内部のデータ構造やアルゴリズムの詳細を知る必要がない。これにより内部実装を変更しても利用側に影響が及ばず、部品としての再利用がしやすくなる。イ はまさにこの性質を述べているので正しい。
オブジェクト指向設計は、システムを独立性の高いオブジェクトに分割して部品として組み合わせるため、むしろ大規模なソフトウェア開発でこそ効果を発揮する。大規模開発に使用されないという記述は誤り。
処理手順を中心に設計し、データとプログラムを切り離して考えるのは手続き型 (構造化) 設計の考え方である。オブジェクト指向設計はデータと処理を一体化してオブジェクトとして扱うので、説明が逆になっている。