IoC (Inversion of Control) 애플리케이션의 흐름의 주도권이 뒤바뀐 것을 말한다. 기존에는 개발자가 애플리케이션의 흐름을 제어했다면, 흐름의 주도권을 개발자가 아닌 Spring과 같은 프레임워크에게 넘기는 것이다. 그렇다면 제어의 흐름이란 무엇일까? 쉽게 말해서 개발자가 작성한 코드를 순차적으로 실행하는 것을 말한다. 그럼 흐름의 주도권이 바뀌었다는 말은 개발자가 작성한 코드를 순차적으로 실행하는 것이 아니라 개발자가 아닌 외부에서 코드를 주입해준다고 이해할 수 있다. 다른 예시로 보면 Library의 경우는 애플리케이션의 흐름의 주도권이 개발자에게 있고, Framework는 애플리케이션의 흐름의 주도권이 Framework에 존재한다. 이때 프레임워크에 IoC원칙이 적용된 것이라 이해할..