DI (Dependency Injection)
- 객체를 하나 더 생성해서 부품을 끼워 넣는 느낌
A -> B 이런식으로 Dependency 가 있으면 자체 코드 수정 필요 없이 연결된 객체로 호출
# Setter Injection
B b = new B();
A a = new A();
a.setB(b)
# Construction Injection
B b = new B();
A a = new A(b);
IoC Container (Inversion of Control)
- 별건 아니고 안에 내용물 닮기는걸 역순으로 갖고간다는 뜻
- 작은걸 먼저 만들고 그담에 그걸 담을 수 있는 컨테이너를 만드는 형식