Junior — Middle
Kokia yra Singleton anotacijos pagrindinė funkcija ir kur ji taikoma?
sobes.tech AI
Atsakymas iš AI
Android'e @Singleton anotacija (pavyzdžiui, naudojant Dagger priklausomybių injekcijai) nurodo, kad klasė turėtų turėti vieną egzempliorių tam tikro komponento ar visos programos ribose.
Pagrindinė funkcija yra užtikrinti, kad kelių užklausų dėl priklausomybės teikimo metu būtų grąžinamas tas pats objektas. Tai naudinga būsenos valdymui, išteklių taupymui ir duomenų nuoseklumo užtikrinimui.
Pavyzdys su Dagger:
@Singleton
@Component(modules = AppModule.class)
public interface AppComponent {
MyRepository getRepository();
}
@Singleton
public class MyRepository {
// ...
}
Čia MyRepository bus sukurtas vieną kartą ir bus naudojamas pakartotinai visur, kur reikalinga.