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

Какие знаешь принципы программирования

SOLID — это пять основных принципов объектно-ориентированного проектирования:

  1. Single Responsibility — класс должен решать только одну задачу.
  2. Open-Closed — классы должны быть открыты для расширения, но закрыты для изменений.
  3. Liskov Substitution — подклассы должны заменять базовые классы без ошибок.
  4. Interface Segregation — много специализированных интерфейсов лучше одного общего.
  5. Dependency Inversion — зависимости должны строиться на абстракциях, а не на конкретных классах.

Пример нарушения Single Responsibility:

python
class User:
    def __init__(self, name):
        self.name = name
    
    def save_to_db(self):  # Нарушение: класс знает о БД
        print(f"Saving {self.name} to database")

Исправленный вариант:

python
class User:
    def __init__(self, name):
        self.name = name

class UserDB:
    def save(self, user):
        print(f"Saving {user.name} to database")
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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