Sobes.tech
Middle

Welke methoden van dependency injection ken je?

sobes.tech AI

Antwoord van AI

  • Initializer Injectie (Initializer Injection)
  • Eigenschap/Setter (Property/Setter Injection)
  • Methode (Method Injection)
// Initializer Injectie (Initializer Injection)
class MyClass {  
    let dependency: Dependency  

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

// Gebruik van de setter  
let instance = MyClass()  
instance.dependency = concreteDependency  
// Methode (Method Injection)  
class MyClass {  
    func performAction(with dependency: Dependency) {  
        //... gebruik dependency ...  
    }  
}  

Initializer-injectie is de meest voorkomende en aanbevolen methode, omdat het garandeert dat de afhankelijkheid aanwezig is bij het maken van het object. De eigenschap wordt gebruikt wanneer de afhankelijkheid optioneel is of niet bekend is op het moment van initialisatie. De methode wordt toegepast wanneer de afhankelijkheid alleen nodig is voor een specifieke methode.