Какие знаешь общепринятые принципы написания кода
Python
Junior
Рунити
Какие знаешь общепринятые принципы написания кода
Ответы
**DRY (Don't Repeat Yourself)** – избегай дублирования кода. Лучше вынести повторяющуюся логику в функции/классы.
**KISS (Keep It Simple, Stupid)** – код должен быть простым и понятным. Избегай излишней сложности.
**YAGNI (You Aren't Gonna Need It)** – не добавляй функциональность "на будущее". Решай только текущие задачи.
**SOLID** – принципы ООП:
- **S**ingle Responsibility – один класс = одна ответственность.
- **O**pen/Closed – классы открыты для расширения, но закрыты для изменений.
- **L**iskov Substitution – наследники должны заменять родителей без ошибок.
- **I**nterface Segregation – много узких интерфейсов лучше одного общего.
- **D**ependency Inversion – зависимости на абстракциях, а не на реализациях.
**PEP 8** – стиль кода в Python (отступы, именование и т.д.).
Пример:
```
# Плохо (нарушает DRY)
print("Hello, Alice!")
print("Hello, Bob!")
print("Hello, Charlie!")
# Хорошо
def greet(name):
print(f"Hello, {name}!")
for name in ["Alice", "Bob", "Charlie"]:
greet(name)
```