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

Python Middle Без компании
Каких принципов ты придерживаешься при написании кода
Ответы
Придерживаюсь принципов **SOLID**, **DRY**, **KISS** и **YAGNI**: - **SOLID**: - Single Responsibility (каждый класс отвечает за одну вещь) - Open/Closed (открыт для расширения, закрыт для изменений) - Liskov Substitution (наследники должны заменять родителей) - Interface Segregation (узкоспециализированные интерфейсы) - Dependency Inversion (зависимости от абстракций) - **DRY** (Don't Repeat Yourself) - избегаю дублирования кода. - **KISS** (Keep It Simple, Stupid) - простота важнее избыточной сложности. - **YAGNI** (You Aren't Gonna Need It) - не реализую функционал "на будущее". Пример хорошего кода: ``` 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) ```