스프링 의존 관계 (Dependency)
28 Mar 2021의존 관계 (Dependency)

그림 1
위 그림에서 ‘A Class
는 B Service
를 의존’ 한다.
(A Class
내부에서 B Service
를 생성하거나, 멤버/로컬 변수로 사용하거나, B의 메서드를 호출하는 것들을 의미)
class A_Class {
B_Service b_service;
function() {
...
b_service = new B_Service();
b_service.doIt(3L);
...
}
}
class B_Service {
function(Long arg) {
...
}
}
만약 B Service
가 변경되면 A Class
내부에서 사용되는 로직중 B Service
와 관련된 로직은 전부 변경되어야 함을 의미한다.
즉 A Class
는 재사용하기 어렵다. (= Component/Service가 될 수 없다)
Component 란, 소스 코드의 아무런 수정 없이 ‘재사용이 가능한’ 수준의 모듈