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.