리스코프 대체(Liskov's substitution) 원칙으로 옳은 것은?
- ①모듈의 설계는 확장(extension)에 대해서는 열려 있어야 하고 수정(modification)에 대해서는 닫혀 있어야 한다.
- ②B가 클래스 A의 자식(child) 클래스라면 A 클래스의 인스턴스가 요구되는 곳에서 B 클래스의 인스턴스가 사용될 수 있도록 설계해야 한다.
- ③구체적인 클래스보다 인터페이스나 추상클래스에 대해 의존되도록 설계해야 한다.
- ④범용적 목적의 단일한 인터페이스보다는 클라이언트별 인터페이스를 다수 갖도록 설계하는 것이 좋다.
선지를 골라 바로 채점해 보세요.
정답 ②
출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)