Ответ
Читаемость - код должен быть понятен без комментариев. Имена переменных/функций должны явно отражать их назначение.
Простота - чем меньше сложности, тем лучше. Избегайте излишнего абстрагирования и "умного" кода.
Эффективность - код должен работать оптимально для своей задачи, но не в ущерб читаемости.
Тестируемость - код должен быть легко покрываем тестами. Избегайте глобальных состояний.
Пример хорошего кода:
func CalculateDiscount(price float64, isPremium bool) float64 {
const premiumDiscount = 0.2
const regularDiscount = 0.1
if isPremium {
return price * premiumDiscount
}
return price * regularDiscount
}
Пример плохого кода:
func CD(p float64, iP bool) float64 {
d := 0.1
if iP { d = 0.2 }
return p*d
}