Junior — Middle
Μπορείτε να εξηγήσετε την έννοια της εισαγωγής εξαρτήσεων και πώς εφαρμόζεται στην ανάπτυξη λογισμικού;
sobes.tech AI
Απάντηση από AI
Η Εισαγωγή Εξαρτήσεων (Dependency Injection, DI) είναι ένα μοτίβο σχεδίασης όπου τα αντικείμενα λαμβάνουν τις εξαρτήσεις τους από έξω, αντί να τις δημιουργούν τα ίδια. Αυτό αυξάνει τη modularity, την δοκιμαστικότητα και την ευελιξία του κώδικα.
Παράδειγμα: αντί η κλάση να δημιουργεί μόνη της ένα αντικείμενο βάσης δεδομένων, το λαμβάνει μέσω του κατασκευαστή ή ενός setter.
class Database:
def query(self):
return "δεδομένα"
class Service:
def __init__(self, db: Database):
self.db = db
def get_data(self):
return self.db.query()
# Εισαγωγή εξάρτησης
database = Database()
service = Service(database)
print(service.get_data())
Αυτή η προσέγγιση διευκολύνει την αντικατάσταση των εξαρτήσεων (π.χ., με mocks κατά τη δοκιμή) και βελτιώνει τη συντήρηση του κώδικα.