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

alrnr3521님의 프로필 이미지
alrnr3521

작성한 질문수

스프링 핵심 원리 - 기본편

@Autowired 필드 명, @Qualifier, @Primary

3분쯤..

작성

·

232

0

@Autowired
public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) {
this.memberRepository = memberRepository;
this.discountPolicy = discountPolicy;
}

여기서 discountPolicy => rateDiscountPolicy

this.discountPolicy = discountPolicy;

이거를 this.discountPolicy = rateDiscountPolicy;

이렇게 쓴 이유는 DIP를 위배하지만 어쩔수없는 선택인가요?

그리고 제가 강의를 쭉 듣고있는데 클린코드를 확실하게 100%지키기는 것은 힘드니까 최대한 맞춰서 설계하는 건가요?

답변 1

0

안녕하세요. alrnr3521님, 공식 서포터즈 David입니다.

.
해당 부분은 @Autowried로 타입과 일치하는 빈이 여러 개일 때 이름을 기준으로 하나의 빈을 특정하여 주입받을 수 있음을 보여주는 예시입니다.

그리고 주입받는 곳의 파라미터 명을 변경한 것이지 주입받는 객체의 타입을 특정 구현체로 변경한 것은 아닙니다. 따라서 여전히 고수준의 추상타입에 의존하고 있는 것입니다.
.
감사합니다.

alrnr3521님의 프로필 이미지
alrnr3521

작성한 질문수

질문하기