![[Java] IoC(제어의 역전), DI(의존성 주입)의 친절한 설명](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOyuVd%2FbtrqiqgE8nx%2FLbkX5zpKNnIMZACm2pOkDK%2Fimg.png)
개발/Spring2022. 1. 11. 19:50[Java] IoC(제어의 역전), DI(의존성 주입)의 친절한 설명
1. IntroIoC(Inversion of Control)의 개념을 설명한다.직역하면 IoC는 제어의 역전으로 불리우는데, 글자만 봐서는 도통 감이 오지 않는다.따라서 이를 예제코드와, 그림과 함께 설명하도록 하겠다. IoC를 설명하기 전에 알아야 할 것이 있다.바로 이 것을 왜 사용하는데? 부터 출발을 해야할 것이다.이유는 간단하다 OOP 원칙 중, Loosely coupled 원칙을 지키기 위해서! Loosely coupled는 "느슨한 결합"이다. 객체 지향 프로그래밍의 중요한 원칙 중 하나이다.나사를 덜 조이는 느슨한이 아닌, 상호 연관성이 있는 객체끼리 최대한 분리하겠다. 이 의미이다.자동차를 생각해보라. 예를 들어 타이어와 휠을 분리해놓지 않았다면, 비교적 자주 갈아주는 타이어를 갈 때마다 ..