문제
다음 설명에 해당하는 객체지향 설계 원칙(SOLID)의 명칭을 각각 쓰시오.
(1) 상위 타입의 객체를 하위 타입의 객체로 치환해도 프로그램의 정확성이 유지되어야 한다. (2) 클라이언트가 사용하지 않는 메서드에 의존하지 않도록 인터페이스를 작고 구체적으로 분리해야 한다.
정답
(1) LSP(리스코프 치환 원칙) (2) ISP(인터페이스 분리 원칙)
해설
LSP(리스코프 치환 원칙)는 상위 타입을 하위 타입으로 치환해도 정확성이 유지되어야 한다는 원칙이고, ISP(인터페이스 분리 원칙)는 인터페이스를 작고 구체적으로 분리해 불필요한 의존을 막는 원칙이다.