09
Апреля
2023
г.
Принцип единой ответственности (Single Responsibility Principle)
Содержание
Определения
Никогда не должно быть более одной причины для изменения класса.
Один класс должен выполнять только одну вещь и делать это хорошо.
Может быть применим на уровнях:
- функции
- объекта
- модуля
Типичные ошибки
Классы с излишними ответственностями трудны для понимания! Такие классы часто превращаются большой комок грязи.
При нарушении SRP, ответственности сталкиваются друг с другом. Тогда они становятся связанными.
Нужно общие обязанности собрать вместе. А разные разъединить.
Набор функций или интерфейс, считается связным если каждая функция тесно связана с другой.
Код должен или что-то рассчитывать, или что-то выводить.
Проблемы:
- Смешивание логики и инфраструктуры
- Класс обслуживает разные слои
- Класс состоит из несколько тысяч строк
Что делать
- Разделять ответственности
- Не писать классы на тысячи строк, делегировать на несколько классов.
- Объединять те части системы, которые меняются по одной причине, и разделять те, которые меняются по разным.
Возник вопрос или предложение пиши на почту
alexsey_89@bk.ru или в
Телеграмм канал
Дата публикации: 09
Апреля
2023
г.