Sobes.tech
Junior — Middle

İnterfeys istifadəsinin aydın fayda gətirdiyi bir vəziyyətə nümunə göstərə bilərsinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

Интерфейсы полезны, когда нужно определить общий контракт для разных классов, позволяя использовать полиморфизм и облегчая замену реализаций.

Пример ситуации:

Допустим, у вас есть разные классы для отправки уведомлений — по email, SMS и push-уведомления. Все они должны иметь метод Send().

public interface INotifier
{
    void Send(string message);
}

public class EmailNotifier : INotifier
{
    public void Send(string message) {
        // отправка email
    }
}

public class SmsNotifier : INotifier
{
    public void Send(string message) {
        // отправка SMS
    }
}

// Использование
void NotifyUser(INotifier notifier, string message) {
    notifier.Send(message);
}

Такой подход позволяет легко добавлять новые способы уведомлений без изменения кода, который их использует, и упрощает тестирование через подмену реализаций.