Middle
Ποιους τρόπους εισαγωγής εξαρτήσεων γνωρίζετε;
sobes.tech AI
Απάντηση από AI
- Εισαγωγή μέσω αρχικοποιητή (Initializer Injection)
- Ιδιότητα/Ρυθμιστής (Property/Setter Injection)
- Μέθοδος (Method Injection)
// Εισαγωγή μέσω αρχικοποιητή (Initializer Injection)
class MyClass {
let dependency: Dependency
init(dependency: Dependency) {
self.dependency = dependency
}
}
// Ιδιότητα/Ρυθμιστής (Property/Setter Injection)
class MyClass {
var dependency: Dependency?
}
// Χρήση του ρυθμιστή
let instance = MyClass()
instance.dependency = concreteDependency
// Μέθοδος (Method Injection)
class MyClass {
func performAction(with dependency: Dependency) {
//... χρήση dependency ...
}
}
Η εισαγωγή μέσω αρχικοποιητή είναι η πιο συνηθισμένη και συστηνόμενη μέθοδος, καθώς διασφαλίζει ότι η εξάρτηση υπάρχει κατά τη δημιουργία του αντικειμένου. Η ιδιότητα χρησιμοποιείται όταν η εξάρτηση είναι προαιρετική ή δεν είναι γνωστή κατά τη στιγμή της αρχικοποίησης. Η μέθοδος εφαρμόζεται όταν η εξάρτηση χρειάζεται μόνο για μια συγκεκριμένη μέθοδο.