Встречается на собеседованиях • сегодня
Расскажи про принципы 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
интервью вопросы и ответы