결국 무엇이든 해내는 사람

Java - 제어의 역전 (Inversion of Control) 본문

두서없는 공부 노트/Spring

Java - 제어의 역전 (Inversion of Control)

kkm8257 2021. 3. 2. 01:28
반응형

Inversion of Control

제어의 역전

 

일반적인 제어권 : 내가 직접 만들어서 사용 ,인스턴스를 직접 생성 관리. 

 

 

그런데 이런 의존성을 관리하는 일은 이제 누군가  밖에서 해준다. (이를 제어권의 역전이라고함)

 

이런 의존성 주입을 다른 누군가가 해준다.

 

 

제어를 역전 시킨 다는 것은 프레임 워크가 내 코드를 호출 하는 것이라고 생각하면 쉽다.

전달되는 인자나  반환 형식만 일치 하면 프레임워크 코드는 내가 작성한 객체와 타입을 고려하지 않는다.

등록된 메소드만 감지하여 실행한다.

 

다른 방법은 프레임워크에 정의 되어 있는 인터페이스, 추상타입을 나의 코드에서 구현, 상속 한후 프레임워크에 전달하는 것.

 

프레임워크는 인터페이스와 추상을 알고 있기 때문에, 내가 하려는 작업을 처리 할 수 있다.

 

이는 객체를 프레임워크에 주입하는 것이고, 이를 의존을 주입 dependency injection 이라고 한다.


반응형
Comments