Sobes.tech
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.