I'm really having a hard time understanding the Dagger 2 Dependency injection system.
I understand the use of the @Inject
annotation to tell Dagger we need to provide an instance of some type to here.
But, I don't understand the various roles of the other components such as: @Module
, @Component
, @Provides
and how they work together to provide the appropriate instance to the appropriate dependency.
Can someone please explain it simply and concisely ?