Sobes.tech
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 ...  
    }  
}  

Η εισαγωγή μέσω αρχικοποιητή είναι η πιο συνηθισμένη και συστηνόμενη μέθοδος, καθώς διασφαλίζει ότι η εξάρτηση υπάρχει κατά τη δημιουργία του αντικειμένου. Η ιδιότητα χρησιμοποιείται όταν η εξάρτηση είναι προαιρετική ή δεν είναι γνωστή κατά τη στιγμή της αρχικοποίησης. Η μέθοδος εφαρμόζεται όταν η εξάρτηση χρειάζεται μόνο για μια συγκεκριμένη μέθοδο.