문제
객체지향 설계에서 정보 은닉(Information Hiding)과 관련한 설명으로 틀린 것은?
① 필요하지 않은 정보는 접근할 수 없도록 하여 한 모듈 또는 하부시스템이 다른 모듈의 구현에 영향을 받지 않게 설계되는 것을 의미한다. ② 모듈들 사이의 독립성을 유지시키는 데 도움이 된다. ③ 설계에서 은닉되어야 할 기본 정보로는 IP주소와 같은 물리적 코드, 상세 데이터 구조 등이 있다. ④ 모듈 내부의 자료 구조와 접근 동작들에만 수정을 국한하기 때문에 요구사항 등 변화에 따른 수정이 불가능하다.
정답
4번
해설
정답: 4. 정보 은닉은 수정 범위를 모듈 내부로 국한하여 오히려 변경을 쉽게 하므로 수정이 불가능하다는 ④는 틀렸다.
오답 풀이
- 1번: 불필요한 정보 접근 차단으로 구현 영향을 줄이는 설명은 옳다.
- 2번: 모듈 독립성 유지에 도움이 된다.
- 3번: 물리적 코드, 데이터 구조 은닉은 옳다.
- 4번: 정보 은닉은 변경을 용이하게 하므로 잘못된 설명이다.
보충 개념 정보 은닉은 모듈 간 결합도를 낮추고 응집도를 높여 유지보수성을 향상시킨다.