스프링
IoC(Inversion of Control), DI(Dependency Injection)
lroot
2022. 6. 24. 20:34
728x90
반응형
IoC(Inversion of Control)
- IoC
스프링에서는 일반적은 Java 객체를 new로 생성하여 개발자가 관리하는 것이 아닌 Spring Container에 모두 맡긴다.
즉, 개발자에서 -> 프레임워크로 제어의 객체 관리의 권한이 넘어 갔음 으로 "제어의 역전" 이라고 합니다.
DI(Dependency Injection)
- DI 장점
- 의존성으로부터 격리시켜 코드 테스트에 용이하다.
- DI를 통하여, 불가능한 상황을 Mock와 같은 기술을 통하여, 안정적으로 테스트 가능하다.
- 코드를 확장하거나 변경할 때 영향을 최소화한다 (추상화)
- 순환참조를 막을 수 있다.