본문 바로가기

용어정리/#스프링 삼각형

용어정리-[#스프링삼각형] 1.IoC/DI


[ IoC/DI ]

제어의 역전 / 의존성 주입 Inversion of Control / Dependency Injection


2018 - 06 - 02


프로그래밍에서 의존성이란?


IOC라고도 하는 DI를 알아보기 전에 프로그래밍에서 의존성이란 무엇인지 알아보자.


자바에서 의존성은 또 무엇인지 알아보자


의존성은 무엇인가?


의사코드


운전자가 자동차를 생산한다.

자동차는 내부적으로 타이어를 생산한다.


자바로 표현


new Car();

Car 객체 생성자에서 new Tire();


그리고 의존성을 단순하게 정의하면 다음과 같다.


의존성은 new다.

new를 실행하는 Car와 Tire 사이에서 Car가 Tire에 의존한다.


결론적으로 전제가 부분에 의존한다고 표현할 수 있다.

더 깊이 들어가면 의존하는 객체 ( 전체 ) 와 의존되는 부분 ( 부분 ) 사이에

집합 관계 ( Aggregation ) 와 구성 관계 ( Composition ) 로 구분할 수 있지만

지금은 그저 전체와 부분이라고 받아들이면 된다.


전체가 부분에 의존한다는 것과 "프로그래밍에서 의존 관계는 new로 표현된다"를 기억하라.



출처

스프링 입문을 위한 자바 객체 지향의 원리와 이해

김종민 저