Sobes.tech
Middle

Кои методи за внедряване на зависимости познаваш?

sobes.tech AI

Отговор от AI

  • Инициализатор (Initializer Injection)
  • Свойство/Setter (Property/Setter Injection)
  • Метод (Method Injection)
// Инициализатор (Initializer Injection)
class MyClass {  
    let dependency: Dependency  

    init(dependency: Dependency) {  
        self.dependency = dependency  
    }  
}  
// Свойство/Setter (Property/Setter Injection)  
class MyClass {  
    var dependency: Dependency?  
}  

// Използване на сетъра  
let instance = MyClass()  
instance.dependency = concreteDependency  
// Метод (Method Injection)  
class MyClass {  
    func performAction(with dependency: Dependency) {  
        //... използване на dependency ...  
    }  
}  

Инициализаторът е най-разпространеният и препоръчителен начин, тъй като гарантира, че зависимостта е налична при създаването на обекта. Свойството се използва, когато зависимостта е опционална или не е известна в момента на инициализация. Методът се прилага, когато зависимостта е необходима само за конкретен метод.