DI개념
단어에서 볼수 있듯이 Dependency Injection은 오브젝트 결합에 있어 의존성이 발생할때 생성자함수나 프로퍼티의 셋터나 메서드에서 삽입하는 걸 말할수 있다.
DI Pattern
마틴파울러가 말하는 DI 즉 위에서 말하는 DI와는 좀 다른 것을 의미하는데 오브젝트 합성 구조를 통한 확장성을 보장받기 위해서 제 3의 존재(assembler)가 필요하고 그 제 3의 존재가 런타임시에 의존관계를 제공해줘야 한다는 뜻이다. 그리고 그방법과 장점에 대해서는 이미 GoF의 전략패턴에서 잘 설명하고 있다.
많은 블로그에서 DI Patterns의 샘플을 쉽게 볼수 있다. 나는 그렇게 생각한다. 위의 패턴의 정의에 빗대어 생각해 보면 대부분의 블로그에서 기재한 내용은 위의 DI 패턴 개념과 상이한 부분이 있다.
단어에서 볼수 있듯이 Dependency Injection은 오브젝트 결합에 있어 의존성이 발생할때 생성자함수나 프로퍼티의 셋터나 메서드에서 삽입하는 걸 말할수 있다.
DI Pattern
마틴파울러가 말하는 DI 즉 위에서 말하는 DI와는 좀 다른 것을 의미하는데 오브젝트 합성 구조를 통한 확장성을 보장받기 위해서 제 3의 존재(assembler)가 필요하고 그 제 3의 존재가 런타임시에 의존관계를 제공해줘야 한다는 뜻이다. 그리고 그방법과 장점에 대해서는 이미 GoF의 전략패턴에서 잘 설명하고 있다.
많은 블로그에서 DI Patterns의 샘플을 쉽게 볼수 있다. 나는 그렇게 생각한다. 위의 패턴의 정의에 빗대어 생각해 보면 대부분의 블로그에서 기재한 내용은 위의 DI 패턴 개념과 상이한 부분이 있다.