Ответ
DRY (Don't Repeat Yourself) — принцип разработки, направленный на минимизацию дублирования кода. Основная идея — выделять повторяющиеся фрагменты в отдельные функции, модули или структуры, чтобы упростить поддержку и избежать ошибок при изменении логики.
Пример нарушения DRY:
func calculateArea(width, height int) int {
return width * height
}
func calculatePerimeter(width, height int) int {
return 2 * (width + height)
}
Пример с применением DRY:
type Rectangle struct {
Width int
Height int
}
func (r Rectangle) Area() int {
return r.Width * r.Height
}
func (r Rectangle) Perimeter() int {
return 2 * (r.Width + r.Height)
}
Преимущества:
- Уменьшение дублирования
- Упрощение тестирования
- Лёгкость рефакторинга
Но важно не переусердствовать — избыточная абстракция может усложнить код.
Видео-ответы
▶
▶
▶
▶
▶
▶
▶