Принцип разделения интерфейса (ISP), четвертый из принципов SOLID
Клиенты не должны зависеть от методов, которые они не используют.
Или "меньше знаешь - крепче спишь". Принцип разделения интерфейсов говорит о том, что слишком «толстые» интерфейсы необходимо разделять на более маленькие и специфические, чтобы клиенты маленьких интерфейсов знали только о методах, которые необходимы им в работе. В итоге, при изменении метода интерфейса не должны меняться клиенты, которые этот метод не используют.
Следование этому принципу помогает системе оставаться гибкой при внесении изменений в логику работы и пригодной для рефакторинга.
Использование же "толстых" интерфейсов приводит к:
- появлению множества "заглушек", и как следствие - ко множеству лишнего кода, который сложно поддерживать
- соблазну нарушить принцип SRP, поскольку клиентский код "знает" о переданном классе, реализующем такой интерфейс, слишком много
Комментариев нет:
Отправить комментарий