Sobes.tech
Middle

Kokius priklausomybių įvedimo būdus žinai?

sobes.tech AI

Atsakymas iš AI

  • Inicijuotojo injekcija (Initializer Injection)
  • Savybė/Setter (Property/Setter Injection)
  • Metodas (Method Injection)
// Inicijuotojo injekcija (Initializer Injection)
class MyClass {  
    let dependency: Dependency  

    init(dependency: Dependency) {  
        self.dependency = dependency  
    }  
}  
// Savybė/Setter (Property/Setter Injection)  
class MyClass {  
    var dependency: Dependency?  
}  

// Naudojant setterį  
let instance = MyClass()  
instance.dependency = concreteDependency  
// Metodas (Method Injection)  
class MyClass {  
    func performAction(with dependency: Dependency) {  
        //... naudoti dependency ...  
    }  
}  

Inicijuotojo injekcija yra dažniausiai naudojamas ir rekomenduojamas būdas, nes užtikrina, kad priklausomybė bus prieinama kuriant objektą. Savybė naudojama, kai priklausomybė yra pasirenkama arba nežinoma inicializacijos metu. Metodas taikomas, kai priklausomybė reikalinga tik konkrečiam metodui.