Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

sanichdaniel의 iOS 개발 블로그

DI 컨테이너 장단점 본문

dependency injection

DI 컨테이너 장단점

sanich8355 2020. 10. 2. 23:15

장점

1. 의존성이 한군데서 관리된다 (관심사의 분리)

2. 한군데서 관리되기에 인스턴스의 생명주기도 관리하기 편하다

3. 한번 의존성을 등록하면, 다시 꺼내서 사용하기가 편리하다

4. configuration 스위치를 만들기 편리하다. 배포용과 테스트용 컨테이너를 만들고 상황에따라 바꿀수 있다

 

단점

1. DI Container 자체에 대해 공부를 해야한다. 

2.사용하기 편리한만큼 코드가 우리에게 추상화가 되어있어 이해하기 어렵다.

3. DI 컨테이너를 모든곳에서 접근할수 있다면, Service Locator 안티패턴으로 이어질 가능성이 크다. 따라서 Composition Root 같이 특정한곳에서 최소한으로 노출이 되어야한다. 

 

 

출처

StackOverflow DI 컨테이너 도입 토론의 장

'dependency injection' 카테고리의 다른 글

Pure DI  (1) 2020.10.04
Dagger를 참고한 프로퍼티 래퍼를 이용한 DI  (0) 2020.10.04
Dagger2 알아보기  (0) 2020.10.04
Service Locator vs DI  (0) 2020.10.03