Dagger2란?
Dagger2란 Java/Kotlin을 위한 의존성 주입 프레임워크이다. Dagger2에 Hilt를 결합한 버전인 Dagger-Hilt가 대세가 되고 있고, 다른 DI Framework과는 달리 컴파일 타임에 연산을 처리하여 런타임의 성능이 다른 DI Framework에 비해 나으므로 Dagger-Hilt가 대세가 될 것은 명백해 보인다.
하지만 다른 DI Framework들에 비해 새로운 개념이 많이 나와서 러닝커브가 높아 배우는데 시간이 오래 걸려 포기를 하고는 한다. (실제로 내가 Dagger2를 공부하는데도 시간이 오래 걸렸다ㅠ)
나는 공부를 하는데 왜 오래 걸리는지 이유를 찾았고, 그 이유로
- 명확한 예시가 없다.
- 설명이 모호하다.
- 지식이 파편화 되어 있다. 설명이 여러곳에 퍼져있다.
위 세가지가 가장 크다고 느꼈다. 따라서 이에 대한 점을 보완하여 기초부터 차근차근 Dagger2를 익히도록 다음과 같은 목차로 글을 써보았다. 이 글이 많은 개발자들에게 도움이 되길 바란다.
목차
3. Component Injection 메서드 - 프로비전(Provision)
4. Component Injection 메서드 - 멤버 인젝션(Member Injection)
5. @Named Annotation을 이용한 Provider 구분
7. Component Builder와 @BindsInstance
9. SubComponent를 이용해 컴포넌트간 의존 관계 설정
[Dagger2 심화] 1. @Provides의 특수한 형태 @Binds
반응형