Junior — Middle
In welke situaties wordt het aanbevolen om de @Inject-annotatie te gebruiken voor constructors bij het gebruik van Dagger?
sobes.tech AI
Antwoord van AI
Het wordt aanbevolen om de annotatie @Inject toe te passen op constructors in Dagger wanneer je wilt dat Dagger automatisch instanties van deze klasse aanmaakt en levert, terwijl het zijn afhankelijkheden beheert.
Situaties om @Inject op de constructor te gebruiken:
- De klasse is een afhankelijkheid die in andere componenten geïnjecteerd moet worden.
- De constructor vereist geen extra parameters die niet via Dagger verkregen kunnen worden.
- Je wilt dat Dagger automatisch objecten aanmaakt zonder handmatig fabrieken of modules te schrijven.
Voorbeeld:
public class UserRepository {
private final ApiService apiService;
@Inject
public UserRepository(ApiService apiService) {
this.apiService = apiService;
}
}
Hier weet Dagger hoe UserRepository te maken, door automatisch ApiService te leveren.