Sobes.tech
Middle

Kādus atkarības ievades veidus pazīsti?

sobes.tech AI

Atbilde no AI

  • Inicializatora injekcija (Initializer Injection)
  • Īpašība/Setter (Property/Setter Injection)
  • Metode (Method Injection)
// Inicializatora injekcija (Initializer Injection)
class MyClass {  
    let dependency: Dependency  

    init(dependency: Dependency) {  
        self.dependency = dependency  
    }  
}  
// Īpašība/Setter (Property/Setter Injection)  
class MyClass {  
    var dependency: Dependency?  
}  

// Izmantojot setter  
let instance = MyClass()  
instance.dependency = concreteDependency  
// Metode (Method Injection)  
class MyClass {  
    func performAction(with dependency: Dependency) {  
        //... izmantot dependency ...  
    }  
}  

Inicializatora injekcija ir visbiežāk izmantotais un ieteicamais veids, jo garantē, ka atkarība būs pieejama, izveidojot objektu. Īpašība tiek izmantota, kad atkarība ir izvēles vai nav zināma inicializācijas brīdī. Metode tiek izmantota, kad atkarība ir nepieciešama tikai konkrētai metodei.