공부/CS 기초이론

[JAVA / Spring] DI, IOC

aerhergag0 2023. 4. 4. 22:03

DI : 의존성 주입 (Dependency Injection) 

 

- 의존성이란, 하나의 객체가 다른 객체 없이는 역할을 수행할 수 없게 되는 것을 의미한다. 하나의 객체가 다른 객체의 상태에 따라 영향을 받는 것을 의미한다.

 

- 주입은 말 그대로 밀어 넣는 것이다. 의존성과 주입을 합하면  '어떤 객체가 필요한 객체를 외부에서 밀어 넣는' 행위를 의미한다.

 

- 빌드 자동화 도구인 maven이나 gradle 도 의존성 주입방식을 사용한다

 

 

IoC : 제어의 역전 (Inversion of Control)

 

- 의존성을 관리하는 주체를 바꾸는 것을 의미한다. 객체들의 연결을 역전시켜 의존성을 외부에서 관리하는 것을 의미한다.