wonslee / object-study

📔오브젝트 예제 코드를 따라 공부, 토론하는 스터디 그룹
0 stars 1 forks source link

의존성 해결 vs 의존성 주입 #34

Open wonslee opened 5 months ago

wonslee commented 5 months ago

261p.
의존성 해결 : 컴파일 타임 의존성을 실행 컨텍스트에 맞는 적절한 런타임 의존성으로 교체하는 것

의존성 주입 : 객체간의 의존 관계를 제 3자에 의해 런타임시에 연결해주는 작업

이 둘은 같은 개념일까요? 의존성 해결에서 메서드를 얘기하는걸 봤을 때 조금 더 넓은 개념을 말하는 것 같기도 하네요,, 어떻게 생각하시나요?

kmw2378 commented 5 months ago

의존성 주입은 의존성 해결의 한 가지 방법인 것 같습니다! 의존성 주입은 크게 내부/외부 에서 해결하는 것으로 구분했습니다.

public class Movie {
    private DiscountPolicy discountPolicy;
    ...
    public Movie(Duration duration, Money fee) {
        this.duration = duration;
        this.fee = fee;
        this.discountPolicy = new AmountDiscountPolicy(...);
    }
}

지금 같은 상황은 내부에서 해결하는 것으로 결국 의존성이 해결되지만 의존성 주입이라고 볼 순 없을 것 같습니다. 저는 의존성 주입은 명시적인 의존성을 만드는 방법 정도로 이해했습니다!