[Spring]IoC, DI란

Dex·2022년 12월 17일
0

Spring

목록 보기
3/3

IoC(Inversion of Control)란?

  • IoC란 그대로 번역을 하면 제어의 역전이라는 의미이며, 메소드나 객체의 호출 작업을 개발자가 결정하는 것이 아니라, 생성주기를 컨테이너가 관리해주는 것을 말한다.
  • 즉 프로그램의 흐름을 컨테이너가 관리해주는 것이다.

컨테이너란?

컨테이너란 무언가가 담겨있는 넓은 공간을 의미하는데 위에서 말하는 정의는 무언가를 모아놓고 여러 기능을 수행하는 논리적인 공간이란 뜻이다.

IoC의 장점

각 객체마다 자기의 역할과 책임을 온전히 다하며 서로 협력하며 변경에 유연한 프로그래밍을 객체지향 프로그래밍이라고 하는데, IoC를 사용하게 되면 변경에 유연한 코드 구조를 가져갈수 있기 때문에 사용하게 됩니다.

DI(Dependency Injection)란?

  • 의존성 주입이라는 뜻으로, 제어의 역행이 일어날때 스프링이 내부에 있는 객체들간의 관계를 관리할때 사용하는 기법이다.
  • 의존성 주입이라는 말 그대로 의존적인 객체를 직접 생성하거나 제어하는 것이 아니라, 특정 객체에 필요한 객체를 외부에서 결정해서 연결 시키는것을 의미한다.
  • 의존성 주입을 함으로썬 모듈 간의 결합도가 낮아지고 유연성이 높아진다.

Reference
Blog
Blog

profile
성장하는 개발자

0개의 댓글