App/Android
[Hilt] 의존성 생성 방법
공부하곰
2024. 11. 25. 10:08
728x90
반응형
1. 자동 생성 (@Inject)
- @Inject를 통해 선언된 생성자는 별도의 모듈 없이도 Hilt가 자동으로 관리한다.
class Repository @Inject constructor(private val service: Service)
- 간단한 구조를 가진 클래스에 적합
2. 명시적 생성 (@Provides)
- @Provides는 복잡한 생성 로직이나 외부 라이브러리의 의존성을 제공할 때 사용됨.
@Module
@InstallIn(SingletonComponent::class)
object AppModule {
@Provides
fun provideService(): Service = ServiceImpl()
}
- 이 방식은 외부 클래스나 인터페이스에 주입이 필요할 때 유용
728x90
반응형