Встречается на 2% собеседований по Python
Расскажи про принципы SOLID
SOLID — это пять принципов объектно-ориентированного проектирования, которые помогают создавать гибкий и поддерживаемый код:
- Single Responsibility (SRP) — класс должен иметь только одну причину для изменения (одну ответственность).
python
class User: def __init__(self, name): self.name = name class UserDB: def save(self, user): # Сохранение в БД
-
Open-Closed (OCP) — классы должны быть открыты для расширения, но закрыты для модификации.
pythonclass Discount: def apply(self, price): pass class VIPDiscount(Discount): def apply(self, price): return price * 0.8 -
Liskov Substitution (LSP) — подклассы должны заменять базовые классы без изменения поведения программы.
-
Interface Segregation (ISP) — клиенты не должны зависеть от интерфейсов, которые они не используют.
-
Dependency Inversion (DIP) — завись от абстракций, а не от конкретных реализаций.
pythonclass Database(ABC): @abstractmethod def connect(self): pass class MySQL(Database): def connect(self): return "MySQL connection"
Эти принципы помогают избегать спагетти-кода и упрощают масштабирование.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы