인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

jhyang님의 프로필 이미지
jhyang

작성한 질문수

스프링 핵심 원리 - 기본편

새로운 구조와 할인 정책 적용

AppConfig에서 구현이 교체가 아닌 복수일경우

작성

·

143

0

안녕하세요 강사님 

강의 잘 듣고 있습니다. 궁금한 점이 있어 여쭤봅니다.

만약 할인정책이 VIP일 경우에는 정률정책을 책정하고 

VVIP일 경우에는 정액정책을 책정한다는 등, 

할인 역할에서 두개의 구현을 모두 사용해야 하는 경우에는 

OrderService가 각 역할의 구현체(memberRepository(), discountPolicy())를 return받았던 것처럼,

DiscountPolicy 생성자에서 두 개의 생성자 주입 후 impl에서 분기처리를 하나요?

아니면 AppConfig에서 분기처리를 해 조건에 맞는 구현체를 넘겨주나요?

기획자가 배역을 정해줘야 하니까 Appconfig에서 해야할 것 같으면서도, Appconfig에서 분기처리를 해버리면 설정이라는 구성영역이 모호해질 것 같고...

조건이 다양해질수록 로직이 복잡해질 것 같은데 확장을 생각하니 개념이 잘 안잡혀서 여쭤봅니다.  감사합니다.

답변 1

3

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. jhyang님

딱 궁금해하시는 부분은 좀 더 뒤에 의존관계 자동 주입 -> 조회한 빈이 모두 필요할 때, List, Map에서 자세히 설명드립니다^^

감사합니다.

jhyang님의 프로필 이미지
jhyang

작성한 질문수

질문하기