IoC
제어의 역전이라는 의미로 대표적으로 DI가 있다. 개발자가 제어권을 가진 것이 아닌 컨테이너에게 위임하는 형태를 말한다. 때문에 전체 흐름에 관한 부분과 구체적인 구현을 분리할 수 있고 개발자는 비즈니스 로직에 집중 할 수 있게 된다.
DI
DI는 의존성 주입을 뜻하며 외부에서 두 객체 간의 관계를 결정하는 디자인 패턴이다. 인터페이스를 사이에 둬서 클래스 레벨에서는 의존관계가 고정되지 않도록 하고 런타임 시에만 관계를 동적으로 주입하여 유연성을 확보하고 결합도를 낮출 수 있다. 때문에 코드 수정이 쉬워진다.
Bean
스프링 Bean이란 자바 객체를 뜻한다 정확히는 자바 객체 > Bean이며 IoC가 컨테이너가 관리하는 자바 객체라고 볼 수 있다.
회고
Ioc, DI, Bean이 왜 필요한지 어디서 작동하는지 까진 아직 잘 모르겠다.. 개념을 좀 더 깊이 공부해야겠다는 생각이 들었다.