DI 컨테이너

Legday_Dev·2023년 5월 1일
0

Spring

목록 보기
1/14
post-thumbnail

스프링의 DI 컨테이너를 알기 이전에 프레임워크와 라이브러리의 차이를 알아야 한다 !!

💡 프레임워크 VS 라이브러리

  • 쉽게 말하자면 제어권이 누구한테 있나이다.
  • 라이브러리는 가져와서 코드를 수정해서 사용해도 된다. 하지만 프레임워크는 제어권이 프레임워크에 있기 때문에 맘대로 바꿔서 사용하지 못한다.
  • 즉, 프레임워크는 내가 작성한 코드를 제어하고, 실행한다.
  • 예를 들어 Jnuit 이라는 테스트 프레임워크는 Junit 의 규칙대로 코드를 작성하게 된다.
  • 라이브러리는 개발자가 작성한 코드가 직정 제어의 흐름을 가진다.

DI(Dependency Injection) : 의존관계 주입

제 개인적인 생각으로는 스프링에서 가장 좋은 기능이라고 생각합니다 !!

  • 의존관계 주입이란 애플리케이션 실행시점(런타임)에 외부에서 실제 구현 객체를 생성하고 클라이언트에 전다랳서 클라이언트와 서버의 실제 의존관계가 연결되는 것을 말한다.
  • 의존관계 주입을 사용하면 클라이언트는 코드를 변경하지 않고, 클라이언트가 호출하는 대상의 타입 인스턴스를 변경할 수 있다.

DI 컨테이너

  • 자바 코드중 설정정보를 담는 클래스인 AppConfig 라는 클래스가 있다.
  • 스프링 프레임워크는 AppConfig와 같이 객체를 생성하고 관리하면서 의존관게를 연결해 주는 컨테이너인 DI 컨테이너가 있다.
  • IoC컨테이너라고도 하지만 최근에는 DI 컨테이너라고 부른다.
profile
백엔드개발자

0개의 댓글