CH8-4 · DECISION

상속보다 조합을 선택하기의 선택 기준을 나란히 비교한다

비교 항목: is-a가 참일 때만 상속을 검토한다 / 조합은 필요한 동작만 바깥에 공개한다 / 전략 객체로 변화 방향을 분리한다

상속보다 조합을 선택하기 판단표
확인 질문판단 근거코드에서 드러낼 것
is-a가 참일 때만 상속을 검토한다모든 하위 객체가 상위 타입의 의미를 지켜야 합니다.타입과 시작값
조합은 필요한 동작만 바깥에 공개한다내부 객체가 가진 많은 메서드 가운데 현재 클래스의 책임에 맞는 것만 위임합니다.실패 또는 변경 경계
전략 객체로 변화 방향을 분리한다계산 방식이나 출력 방식처럼 자주 바뀌는 동작을 인터페이스 필드로 받으면 클래스 계층을 늘리지 않고 교체할 수 있습니다.선택한 규칙의 결과

선택 기준 계산 방식이나 출력 방식처럼 자주 바뀌는 동작을 인터페이스 필드로 받으면 클래스 계층을 늘리지 않고 교체할 수 있습니다.