DI (Dependency Injection, 의존성 주입)
DI(Dependency Injection, 의존성 주입)는 IoC(Inversion of Control, 제어의 역전)의 구현 방법 중 하나입니다.
즉, IoC가 객체의 생성과 생명주기 관리를 프레임워크가 담당하는 전반적인 개념이라면, DI는 그 개념을 실제로 구현하는 방식 중 하나입니다.
DI의 주요 개념
-
의존성
- 객체지향 프로그래밍에서 한 클래스가 다른 클래스에 의존하게 되는 경우
- 예를 들어, 클래스 A가 클래스 B의 메소드를 사용한다면, 클래스 A는 클래스 B에 의존하게 됩니다.
-
주입: 의존성 주입이란, 객체가 자신이 의존하는 객체를 직접 생성하거나 찾는 대신에 외부 시스템(즉, 프레임워크 또는 IoC 컨테이너)에서 생성된 것을 제공(주입)받는 방식을 의미합니다.
결론
DI는 의존성을 가진 객체가 직접 의존성을 관리하거나 해결하는 대신, 이를 IoC Container가 대신 관리하도록 제어권을 넘기는 것입니다.
이를 통해 코드는 더욱 모듈화되고, 테스트와 재사용이 용이해지며, 결합도는 낮추고 응집력은 높아집니다.
부족한 점이나 잘못 된 점을 알려주시면 시정하겠습니다 :>
728x90
'DEV > Java' 카테고리의 다른 글
MockMVC Get 응답 비어있을 때 해결 방법 (0) | 2023.07.20 |
---|---|
Junit Test 꿀팁 (0) | 2023.07.19 |
@Transactional (0) | 2023.07.18 |
ACID (0) | 2023.07.18 |
Service의 책임 (0) | 2023.07.18 |