IoC (Inversion of Control) IoC는 '제어의 역전'이라고 해석되어 진다. 우리는 일반적으로 A클래스 내에서 B클래스의 객체를 불러와 사용할 때 두 클래스간의 의존성이 생긴다. 많은 클래스들간의 의존성이 생길 때 수많은 생성자를 통해 객체를 생성해야하고 이는 코드의 가독성을 떨어뜨리는 문제가 발생했다. 그래서 우리는 A클래스 내에서 B클래스 객체를 생성하는 방법대신 만들어진 B클래스의 객체를 A클래스에서 사용하는 방법을 사용하게 되었다. 이런 제어 방법을 기존의 제어 흐름과 반대 된다고 하여 제어의 역전, 'IoC'라고 부른다. DI (Dependency Injection) DI는 IoC과정에서 만들어진 B클래스 객체를 A클래스에서 사용할 수 있도록하는 것 즉, A와 B 클래스의 의존..