Sobes.tech
Назад к вопросам
Junior — Middle
64

Каким образом реализуется принцип разделения интерфейсов в реальных проектах?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

Принцип разделения интерфейсов (Interface Segregation Principle) в реальных проектах реализуется через создание нескольких специализированных интерфейсов вместо одного общего. Это позволяет клиентам зависеть только от тех методов, которые им действительно нужны.

Например, вместо одного большого интерфейса:

interface Printer {
    void print(Document d);
    void scan(Document d);
    void fax(Document d);
}

лучше разделить на несколько:

interface IPrinter {
    void print(Document d);
}

interface IScanner {
    void scan(Document d);
}

interface IFax {
    void fax(Document d);
}

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