컴퓨터 지식

[CS] 제어 반전 (제어 역전 (IoC))

bornsoon 2024. 10. 31. 16:34

IoC ← Inversion of Control

 

기존의 개발 방식은 개발자가 직접 제어 흐름을 제어하던 것에서 외부의 프레임워크나 라이브러리에게 제어 흐름이 넘어간 형상을 말한다.

 

IoC의 구현 방법

  • Factory Pattern
    • 객체 생성을 전담하는 팩토리 클래스를 두어 객체를 생성하는 방식
  • Template Method Pattern
    • 객체 생성 과정을 추상화하여, 하위 클래스에서 구체적인 구현을 담당하는 방식
  • Service Locator Pattern
    • 서비스 로케이터 클래스는 객체 생성 및 관리에 대한 책임을 가지며, 클라이언트는 서비스 로케이터를 통해 필요한 객체를 가져오게 된다.
  • Dependency Injection (DI)
    • 객체 생성 및 관리에 대한 책임을 IoC 컨테이너가 가지며, 필요한 객체를 직접 생성하거나 외부에서 주입받는 방
728x90