Sobes.tech
Junior

Ποιος είναι ο σκοπός της Εισαγωγής Εξαρτήσεων στην ανάπτυξη C#;

sobes.tech AI

Απάντηση από AI

Η Εισαγωγή Εξαρτήσεων (DI) στη C# χρησιμοποιείται για τη διαχείριση των εξαρτήσεων μεταξύ κλάσεων, αυξάνοντας την ευελιξία και την δοκιμαστικότητα του κώδικα.

Κύριοι στόχοι του DI:

  • Μείωση του συσχετισμού: οι κλάσεις δεν δημιουργούν άμεσα τις εξαρτήσεις τους, αλλά τις λαμβάνουν από έξω.
  • Απλοποίηση των δοκιμών: εύκολη αντικατάσταση των εξαρτήσεων με mocks ή stubs.
  • Βελτίωση της συντηρησιμότητας: η αλλαγή της υλοποίησης μιας εξάρτησης δεν απαιτεί τροποποίηση του κώδικα που τη χρησιμοποιεί.

Παράδειγμα:

public interface ILogger { void Log(string message); }

public class ConsoleLogger : ILogger {
    public void Log(string message) => Console.WriteLine(message);
}

public class UserService {
    private readonly ILogger _logger;
    public UserService(ILogger logger) {
        _logger = logger;
    }
    public void CreateUser(string name) {
        // λογική δημιουργίας χρήστη
        _logger.Log($"Χρήστης {name} δημιουργήθηκε.");
    }
}

// Εισαγωγή εξάρτησης
var logger = new ConsoleLogger();
var userService = new UserService(logger);
userService.CreateUser("Alice");

Έτσι, το DI προάγει την αντιστροφή ελέγχου (IoC) και βελτιώνει την αρχιτεκτονική της εφαρμογής.