IoC, DI

황희윤·2023년 7월 22일

IoC : Inversion of Control (제어의 역전)

보통 아주 쉬운 방법으로 개체를 사용할 때, 객체가 필요한 곳에 객체를 직접 생성한다.

public class A{
	b = new B(); // 클래스 A에서 클래스 B의 객체를 생성
}

IoC는 외부에서 관리하는 객체를 가져와 사용하는 것

스프링은 스프링 컨테이너가 객체를 관리, 제공하는 역할을 한다.

public class A {
	private B b; // 어디선가 생성한 객체를 b에 할당
}

DI : Dependency Injection (의존성 주입)

  • 어떤 클래스가 다른 클래스에 의존

  • IoC를 구현하기 위해 사용하는 방법

  • 빈 : 스프링 컨테이너에서 관리하는 객체

  • @Autowired : 스프링 컨테이너의 빈을 주입하는 역할

public class A {
	// A에서 B를 주입받음
	@Autowired
    B b;
}

스프링 컨테이너 : 빈을 생성하고 관리

profile
HeeYun's programming study

0개의 댓글