Использовал ли принцип DRY
Python
Middle
Без компании
Использовал ли принцип DRY
Ответы
Да, принцип DRY (Don't Repeat Yourself) — один из ключевых в разработке. Его суть — избегать дублирования кода, вынося повторяющиеся части в функции, классы или модули.
**Пример нарушения DRY:**
```
def calculate_area_square(side):
return side * side
def calculate_area_rectangle(length, width):
return length * width
```
**Пример с DRY:**
```
def calculate_area(*args):
if len(args) == 1:
return args[0] * args[0] # квадрат
elif len(args) == 2:
return args[0] * args[1] # прямоугольник
```
Или лучше через полиморфизм:
```
class Shape:
def area(self):
pass
class Square(Shape):
def __init__(self, side):
self.side = side
def area(self):
return self.side ** 2
class Rectangle(Shape):
def __init__(self, length, width):
self.length = length
self.width = width
def area(self):
return self.length * self.width
```
DRY улучшает поддержку кода, уменьшает вероятность ошибок и упрощает тестирование.