Что такое Single Responsibility Principle (SRP)?

Ответ

У класса должна быть только одна причина для изменения. Если класс отвечает и за отчеты, и за рассылку - при смене формата отчетов или канала рассылки придется менять один и тот же класс.

// Плохо: один класс и сохраняет, и шлет письмо
class UserRegistration {
    public function register($data) {
        $user = $this->saveUser($data);
        $this->sendEmail($user);
    }
}
// Хорошо: регистрация оркестрирует, сохранение и письмо - отдельные сервисы
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.