Skip to Content

Заключение

Что важно запомнить о SRP

  1. SRP – это про причины для изменения.
    Класс должен меняться только по одной причине. Если у него несколько зон ответственности – у него несколько причин для изменения.

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

  3. Главный признак нарушения – «смесь».
    Если класс одновременно управляет данными, логирует, отправляет уведомления, работает с файлами – это классический «швейцарский нож». Выделяйте отдельные сущности.

  4. Инструменты SRP – делегирование и композиция.
    Вместо того чтобы делать всё в одном классе, передавайте части работы другим классам. Используйте внедрение зависимостей.

  5. SRP помогает другим принципам SOLID.
    Разделение ответственности облегчает соблюдение OCP (легче расширять) и DIP (проще внедрять абстракции).

Помните: идеальный класс – это класс, про который можно сказать одним предложением без союзов «и», «а также», «к тому же». Если у вас не получается – скорее всего, ответственность стоит разделить.

Теперь, когда вы разобрали пять реальных примеров и прошли чек-лист, вы готовы применять SRP в своих проектах. Переходите к следующему принципу – Open-Closed.

Last updated on