Android Dagger2 사용 끄적끄적 (feat.첫글)

KooYm·2021년 11월 8일
0

나는 벨로그를 개발하면서 궁금했던걸 해소했을 때, 해냈을 때 일기쓰는 것처럼 메모하는 식으로 글을 쓸 것이다.

아직 안드로이드 개발에 있어 자주 사용하는 라이브러리들을 잘 알지 못한다. 그 중 DI(의존성 주입) 라이브러리는 dagger, koin 등이 있는데 내가 개발하고 있는 앱에서는 dagger를 사용한다.

Dagger는 왜 사용하는지, 사용함으로서 이점이 뭔지 검색을 몇 번 해보고 이해하고자 했으나 아직은 부족한 탓인지 이해가 안 된다...

같은 클래스 타입을 가진 객체를 2개 이상 의존성 주입을 위해 module에 각각 추가를 시켰었다. 하지만 오류가 났고, dagger에 대해 완전 잘못 알고있었다. 같은 클래스 타입에 같은 return 값을 준다면
PathOverlay라는 클래스 타입인 defaultRoutes와 routesPath 라는 이름을 가진 객체는 하나의 Provider로 생성이 가능하다.

@Provides
PathOverlay providePathOverlay(){ return new PathOverlay();}

로 provide 해주고

@Inject PathOverlay defaultPath;
@Inject PathOverlay routesPath;

이런 식으로 생성을 해줄 수 있다.

profile
안드로이드 끄적끄적

0개의 댓글