Middle
Quali metodi di injection delle dipendenze conosci?
sobes.tech AI
Risposta dell'AI
- Iniezione tramite inizializzatore (Initializer Injection)
- Proprietà/Setter (Property/Setter Injection)
- Metodo (Method Injection)
// Iniezione tramite inizializzatore (Initializer Injection)
class MyClass {
let dependency: Dependency
init(dependency: Dependency) {
self.dependency = dependency
}
}
// Proprietà/Setter (Property/Setter Injection)
class MyClass {
var dependency: Dependency?
}
// Uso del setter
let instance = MyClass()
instance.dependency = concreteDependency
// Metodo (Method Injection)
class MyClass {
func performAction(with dependency: Dependency) {
//... usare dependency ...
}
}
L'iniezione tramite inizializzatore è il metodo più comune e raccomandato, poiché garantisce che la dipendenza sia presente al momento della creazione dell'oggetto. La proprietà viene usata quando la dipendenza è opzionale o non nota al momento dell'inizializzazione. Il metodo viene applicato quando la dipendenza è necessaria solo per un metodo specifico.