스프링 도전기 - 27

김치전사·2022년 3월 18일
0

스프링 도전기

목록 보기
27/50

오늘은 새로운 할인 정책 적용과 문제점에 대해 공부한다

할인정책을 변경하려면 OrderServiceImpl의 코드를 변경해야 한다


인터페이스 뿐만 아니라 구체(구현)클래스에도 의존하고 있다(DIP 위반)
FixDiscountPolicy->RateDiscountPolicy로 변경하는 순간 OrderServiceImpl의 소스코드도 변경해야 하므로 OCP위반이다

구현클래스에 의존하는 것이 아닌 인터페이스에만 의존하게 설계하기


인터페이스에만 의존하게 변경했지만 구현체가 없으므로 실행이 안된다

이 문제를 해결하려면 OrderServiceImple에 DiscountPolicy의 구현 객체를 대신 생성하고 주입해야한다

profile
개인공부 블로그입니다. 상업적 용도 X

0개의 댓글