Sobes.tech
Back to questions
Junior — Middle
72

Каково значение буквы 'I' в принципах SOLID, и какое её предназначение в объектно-ориентированном программировании?

Companies where asked
Банк ПСБ

Answer from AI

sobes.tech AI

Буква 'I' в принципах SOLID обозначает Interface Segregation Principle (Принцип разделения интерфейса).

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

Назначение в ООП:

  • Повышает гибкость и модульность кода.
  • Упрощает поддержку и расширение.
  • Избегает ненужных зависимостей и связности.

Пример на C#:

interface IPrinter {
    void Print();
}

interface IScanner {
    void Scan();
}

class MultiFunctionDevice : IPrinter, IScanner {
    public void Print() { /* реализация печати */ }
    public void Scan() { /* реализация сканирования */ }
}

class SimplePrinter : IPrinter {
    public void Print() { /* только печать */ }
}

Здесь интерфейсы разделены по функционалу, и класс может реализовать только нужные ему интерфейсы.