Middle
Jakie metody wstrzykiwania zależności znasz?
sobes.tech AI
Odpowiedź od AI
- Wstrzykiwanie przez inicjalizator (Initializer Injection)
- Właściwość/Ustawianie (Property/Setter Injection)
- Metoda (Method Injection)
// Wstrzykiwanie przez inicjalizator (Initializer Injection)
class MyClass {
let dependency: Dependency
init(dependency: Dependency) {
self.dependency = dependency
}
}
// Właściwość/Ustawianie (Property/Setter Injection)
class MyClass {
var dependency: Dependency?
}
// Użycie setter'a
let instance = MyClass()
instance.dependency = concreteDependency
// Metoda (Method Injection)
class MyClass {
func performAction(with dependency: Dependency) {
//... użyj dependency ...
}
}
Wstrzykiwanie przez inicjalizator jest najczęstszą i zalecaną metodą, ponieważ gwarantuje, że zależność będzie dostępna podczas tworzenia obiektu. Właściwość jest używana, gdy zależność jest opcjonalna lub nieznana w momencie inicjalizacji. Metoda jest stosowana, gdy zależność jest potrzebna tylko dla konkretnej metody.