8장 의존성 관리하기
객체지향 설계의 핵심은 협력을 위해 필요한 의존성은 유지하면서 변경을 방해하는 의존성은 제거하는데 있다. 이런 관점에서 객체지향 설계란? 의존성을 관리하는 것 객체가 변화를 받아들일 수 있게 의존성을 정리하는 기술 변경과 의존성 어떤 객체가 협력하기 위해 다른 객체를 필요로 할 때 두 객체 사이에 의존성이 존재하게 된다. 이러한 의존성은 실행 시점과 구현시점에 서로 다른 의미를 가진다. 실행 시점 - 의존하는 객체가 정상적으로 동작하기 위해선 실행 시에 의존 대상 객체가 반드시 존재해야 한다. 구현 시점 - 의존 대상 객체가 변경될 경우 의존하는 객체도 함께 변경한다. public class PeriodCondition implements DiscountCondition { private DayOfWee..