다음 클래스 다이어그램은 객체지향 설계에서 클래스를 설계할 때의 원칙 … | [7급 국가직 소프트웨어공학] 22년 1회차 기출문제 상세 페이지
1[7급 국가직 소프트웨어공학] 22년 1회차
다음 클래스 다이어그램은 객체지향 설계에서 클래스를 설계할 때의 원칙 가운데 하나를 적용한 사례이다. 설계 원칙으로 옳은 것은?‘학과평균점수’ 클래스의 역할은 한 대학의 학과별 기말 고사 평균 점수를 계산하기 위한 것이다. <보기 1>은 클래스 설계의 해당 원칙을 적용하기 전의 다이어그램이고, <보기 2>는 해당 원칙을 적용한 이후의 다이어그램이다.<보기 1>
<보기 2>
1
개방 폐쇄의 원칙
2
의존 관계 역전의 원칙
3
인터페이스 분리의 원칙
4
단일 책임 원칙
해설
적용된 설계 원칙은 개방 폐쇄의 원칙(OCP)이다.
적용 전에는 학과평균점수 클래스 안에 학과마다 메서드가 나열되어 있어 학과가 늘 때마다 이 클래스를 고쳐야 한다. 적용 후에는 학과라는 상위 타입에 평균계산()을 두고 학과별 하위 클래스가 이를 구현하므로, 새 학과는 기존 코드 수정 없이 하위 클래스 추가로 확장된다.
- 의존 관계 역전의 원칙: 상위 모듈과 하위 모듈이 모두 추상에 의존하게 하는 원칙으로, 이 사례가 보여 주는 핵심인 수정 없는 확장과는 초점이 다르다.
- 인터페이스 분리의 원칙: 비대한 인터페이스를 클라이언트별로 쪼개는 원칙인데, 여기서는 인터페이스를 나누지 않았다.
- 단일 책임 원칙: 한 클래스가 하나의 책임만 갖게 하는 원칙으로, 적용 전 클래스도 평균 계산이라는 한 역할만 맡고 있었다.
오류나 개정된 내용이 보이면 알려주세요
