Inversion of Control이란?

Inversion of Control(IoC)

  • 프로그램의 흐름이 프레임워크나 라이브러리 같은 외부 요소에 의해 제어되는 것.
  • 프로그래머가 작성한 프로그램이 외부 라이브러리의 코드를 호출하는 일반적인 흐름과 반대된다.
  • 이벤트 기반 프로그래밍, 콜백 함수, Template Method 패턴, Dependency Injection 등이 있다.
  • 프레임워크가 작업 방식을 정의하기 때문에 기능 구현에 집중할 수 있다.