저고데

[Spring Boot] 17. 조립식 컴퓨터로 알아보는 DI 본문

Spring Boot

[Spring Boot] 17. 조립식 컴퓨터로 알아보는 DI

진철 2024. 1. 29. 22:46
728x90
반응형

이번에는 DI에 대해서 알아보자.

우선 DI는 Dependency Injection의 약자이다.

Injection? 무언가를 주입한다는 건가?

그렇다 !

조립식 컴퓨터와 DI

조립식 컴퓨터로 예를 들어보자.

조립식 컴퓨터는 내가 원하는 부품들을 사용하여 만들 수 있다는 장점이 있다.

하지만 부품들을 하나하나 조립해야한다는 점이 매우 불편하다는 단점이 있다.(조립을 좋아하는 분들도 있겠지만 그냥 넘어가자!)

이럴 때 우리는 어떻게 하는가?

가장 간단한 방법으로 외부 업체에 돈을 주고 맡기는 방법이 있다.

 

java에서도 마찬가지이다.

내가 A라는 객체 내에 B라는 객체를 사용하고 싶다고 가정하자.

A가 B를 사용하기 위해서는 @Setter와 같이 setB를 이용하거나 생성자를 통해서 B를 지정하여야한다.

하지만, 이는 내가 직접 부품으로 컴퓨터를 조립하는 것과 동일하기 때문에 프로젝트 규모가 커지거나 신경써야할 부분이 많으면 불편하고 오류가 발생할 가능성도 높다.

따라서 스프링에서는 DI를 제공하여 개발자의 불편함을 덜어준다.

DI가 부품을 조립해주는 외주업체인 셈이다!

728x90
반응형