IOC 제어의 역전

2021. 1. 12. 21:08SPRING/SPRING CORE

IOC(Inversion of Control)란?

  • 개발자가 필요할때 필요한 모듈을 생성하고 호출하는것은 자연스러운 흐름.
  • IOC는 개발자가 개발한 모듈을 프레임워크에서 호출하는 것.
  • 개발자가 개발한 모듈은 어떤 객체로 실행될지 모른다.(제어의 흐름을 신경쓰지 않아도 된다.) 단지 자신의 로직만 실행하면 된다.
  • 제어의 흐름은 프레임워크에서 가져가 개발자 모듈을 호출한다.
  • 제어의 흐름이라는 것은 객체를 생성하고 호출하는 하여 전체적인 흐름을 정하는 일.
  • 프레임워크: 제어권을 가져가 개발자가 개발한 모듈을 호출한다.
  • 라이브러리: 개발자가 제어권이 있어 개발자가 라이브러리 모듈을 호출한다.