의존성 주입이란 객체지향 프로그래밍을 하다보면 한번 쯤 듣게되는 용어이다.
코드에서의 의존성이란 결합도가 높다는 것을 의미한다. A클래스에서 B클래스의 일부를 참조할 때
B에서 변경이 일어나면 A도 변경해줘야하는 비효율적인 상황이 발생 할 수 있다.
그러면 코드의 재활용성이 떨어지고, 결합도(Coupling) 가 높아지게 된다.
Spring 프레임워크는 이 부분을 강력하게 지원하고 있다. 두 객체간의 관계를 결정해주는 디자인 패던으로, 인터페이스를 통해 의존관계가 고정되지않고 관계를 다이나믹하게 주입하여 유연성을 확보하고 결합도를 낮출수있게 해준다.
DI를 해야하는 이유
- 코드의 재활용성이 높아진다
- 객체간의 의존성을 줄이거나 없앨 수 있다.
- 객체간의 결합도를 낮추면서 더욱 유연한 코드를 작성 할 수 있다.
의존성을 주입하면 클래스를 직접적으로 생성하는것이 아닌, 외부로부터 필요한 객체를 받아서 사용하는 것이다.
이를 통해 객체간의 결합도를 줄이고 코드의 재활용성이 높아진다.
'IT > etc' 카테고리의 다른 글
Static변수에 Injection 하는 방법, @Value 변수값이 null 일 때 (0) | 2022.01.25 |
---|---|
MVC패턴이란? (0) | 2022.01.24 |
[OS]프로세스와 스레드의 차이 (0) | 2021.07.12 |
[TeamsWebhook] 팀즈 웹훅으로 채널에 메세지 보내기 (0) | 2021.06.17 |
[AWS] AWS Global Infra Overview 필기 (0) | 2021.05.25 |