Sobes.tech
Middle

Aké spôsoby zavádzania závislostí poznáš?

sobes.tech AI

Odpoveď od AI

  • Injektáž pomocou inicializátora (Initializer Injection)
  • Vlastnosť/Setter (Property/Setter Injection)
  • Metóda (Method Injection)
// Injektáž pomocou inicializátora (Initializer Injection)
class MyClass {  
    let dependency: Dependency  

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

// Použitie setteru  
let instance = MyClass()  
instance.dependency = concreteDependency  
// Metóda (Method Injection)  
class MyClass {  
    func performAction(with dependency: Dependency) {  
        //... použiť dependency ...  
    }  
}  

Injektáž pomocou inicializátora je najbežnejšia a odporúčaná metóda, pretože zabezpečuje, že závislosť je prítomná pri vytváraní objektu. Vlastnosť sa používa, keď je závislosť voliteľná alebo nie je známa v momente inicializácie. Metóda sa aplikuje, keď je závislosť potrebná iba pre konkrétnu metódu.