Встречается на собеседованиях • сегодня

Как понимаешь принципы SOLID

SOLID — это пять принципов объектно-ориентированного проектирования, которые помогают создавать гибкий и поддерживаемый код.

  1. Single Responsibility (SRP) — класс должен иметь только одну причину для изменения (одну ответственность).
python
class User:
    def __init__(self, name):
        self.name = name

class UserDB:
    def save(self, user):
        print(f"Saving {user.name} to DB")
  1. Open-Closed (OCP) — классы должны быть открыты для расширения, но закрыты для модификации.
python
class Payment:
    def process(self):
        pass

class CreditCardPayment(Payment):
def process(self):
print("Processing credit card")

class PayPalPayment(Payment):
def process(self):
print("Processing PayPal")

text
3. **Liskov Substitution (LSP)** — подклассы должны заменять базовые классы без изменения поведения.  
4. **Interface Segregation (ISP)** — клиенты не должны зависеть от интерфейсов, которые они не используют.  
5. **Dependency Inversion (DIP)** — модули высокого уровня не должны зависеть от модулей низкого уровня. Оба должны зависеть от абстракций.  

Применение SOLID делает код чище, тестируемее и легче для масштабирования.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы