Что значит буква S в SOLID

Python Middle Evapps
Что значит буква S в SOLID
Ответы
SOLID — это принципы объектно-ориентированного проектирования. Буква **S** означает **Single Responsibility Principle (Принцип единственной ответственности)**. Суть: каждый класс (или модуль) должен иметь только одну причину для изменения, т.е. выполнять одну конкретную задачу. **Пример нарушения:** ``` class User: def __init__(self, name, email): self.name = name self.email = email def save_to_db(self): # Сохранение в БД pass def send_email(self, message): # Отправка email pass ``` Здесь `User` отвечает и за данные пользователя, и за работу с БД, и за отправку писем. **Исправленный вариант:** ``` class User: def __init__(self, name, email): self.name = name self.email = email class UserDB: def save(self, user): # Сохранение в БД pass class EmailService: def send(self, user, message): # Отправка email pass ``` Теперь каждый класс решает свою задачу.