의존성(Dependency)이란? 코드에서 의존성은 두 모듈간의 연결을 의미한다. class A가 다른 class B를 사용할 때 A는 B에 의존한다고 볼 수 있다. 즉 한 객체의 코드에서 다른 객체를 생성하거나 다른 객체의 메서드를 호출할 때, 또는 파라미터로 객체를 전달받아 사용할 때 의존성이 발생한다고 할 수 있다. 이렇게 되면 A는 B 없이는 작동할 수 없고 B를 재사용하지 않으면 A또한 재사용할 수 없으며 하나를 수정하면 다른 클래스에도 영향을 끼치게 된다. 강한 결합은 강한 의존성을 만들게 되고 이는 유지보수를 힘들게 하며 재사용을 어렵게 만든다. 의존성 주입(Dependency Injection)이란? 흔히 DI(Dependency Injection)라고 불리는 의존성 주입은 위와 같은 ..