Sobes.tech
Junior — Middle

Kāda ir Singleton anotācijas galvenā funkcija un kur to izmanto?

sobes.tech AI

Atbilde no AI

Androidā @Singleton` anotācija (piemēram, izmantojot Dagger, lai injicētu atkarības) norāda, ka klasei jābūt vienai eksemplāram noteiktā komponentā vai visā lietojumprogrammā.

Galvenā funkcija ir nodrošināt, ka vairākas pieprasījumu par atkarību nodrošināšanu tiks atgriezts tas pats objekts. Tas ir noderīgi stāvokļa pārvaldībai, resursu taupīšanai un datu konsekvences nodrošināšanai.

Piemērs ar Dagger:

@Singleton
@Component(modules = AppModule.class)
public interface AppComponent {
    MyRepository getRepository();
}

@Singleton
public class MyRepository {
    // ...
}

Šeit MyRepository tiks izveidots vienreiz un tiks atkārtoti izmantots visur, kur tas ir nepieciešams.