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

Каких принципов ты придерживаешься при написании кода

Придерживаюсь принципов SOLID, DRY, KISS и YAGNI:

  1. SOLID:
    • Single Responsibility (каждый класс отвечает за одну вещь)
    • Open/Closed (открыт для расширения, закрыт для изменений)
    • Liskov Substitution (наследники должны заменять родителей)
    • Interface Segregation (узкоспециализированные интерфейсы)
    • Dependency Inversion (зависимости от абстракций)
  1. DRY (Don't Repeat Yourself) - избегаю дублирования кода.

  2. KISS (Keep It Simple, Stupid) - простота важнее избыточной сложности.

  3. YAGNI (You Aren't Gonna Need It) - не реализую функционал "на будущее".

Пример хорошего кода:

python
class PaymentProcessor(ABC):
    @abstractmethod
    def process(self, amount: float) -> None: ...

class CreditCardProcessor(PaymentProcessor):
    def process(self, amount: float) -> None:
        print(f"Processing ${amount} via credit card")

# Использование
processor: PaymentProcessor = CreditCardProcessor()
processor.process(100.0)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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