Sobes.tech
Junior — Middle

Μπορείς να αναφέρεις τα βασικά στοιχεία της δομής Dagger που χρησιμοποιούνται για τη διαχείριση εξαρτήσεων;

sobes.tech AI

Απάντηση από AI

Βασικά στοιχεία της δομής Dagger για τη διαχείριση εξαρτήσεων:

  • @Module — κλάση που παρέχει εξαρτήσεις μέσω μεθόδων που σημειώνονται με @Provides.
  • @Provides — διακριτικό για τις μεθόδους εντός του module που δημιουργούν και επιστρέφουν αντικείμενα εξαρτήσεων.
  • @Component — διεπαφή που συνδέει τα modules και τα σημεία εισαγωγής εξαρτήσεων, υπεύθυνη για τη δημιουργία κώδικα εισαγωγής.
  • @Inject — διακριτικό που χρησιμοποιείται σε κατασκευαστές, πεδία ή μεθόδους για να υποδείξει πού και ποιες εξαρτήσεις πρέπει να εισαχθούν.

Παράδειγμα:

@Module
class NetworkModule {
    @Provides
    OkHttpClient provideOkHttpClient() {
        return new OkHttpClient();
    }
}

@Component(modules = NetworkModule.class)
interface AppComponent {
    void inject(MainActivity activity);
}