의존성 주입(Dependency Injection) 을 위해!
자세한 정보는 앞으로 공부를 더 해보면서 추가해보도록 하겠다.
@HiltAndroidApp
Application 확장 클래스에 붙여서 힐트의 코드를 생성할 수 있음
@AndroidEntryPoint
힐트 컴포넌트를 생성
(Activity, Fragment, View, Service, BroadcastReceiver)
Abstract class는 이 어노테이션이 필요없음
@HiltViewModel
@Inject
필드에 주입. 다른 안드로이드 클래스에 의존성을 제공받을 수 있다.
힐트에 의해 주입된 필드멤버는 private 일 수 없음.
@Inject constructor()
생성자에 주입
의존성으로서 인스턴스에게 타입을 제공하는데 필요한 binding information
생성자에 힐트가 그 클래스에 어떻게 인스턴스를 제공할지 알려준다.
@Module
주입할 객체 타입이 내가 가진게 아닐 때, 바인딩 정보를 제공