DDDevotion
Иногда наше бизнес-правило может выглядеть так:
if (this.Total > 100)
Мы точно знаем, как получить результат. Но понимаем ли мы, что означают эти 100 и какое решение сейчас принимает система?
Можно вынести число в константу. Можно спрятать сравнение за методом с убедительным доменным названием. Но хорошее имя не появляется от самого рефакторинга — его нужно заслужить пониманием домена.
Если такого понимания пока нет, простыня ифчиков будет честнее, чем красивый, но выдуманный (кодогенерация вам в помощь!) RequiresManualApproval().
Имя в коде — это утверждение о нашем понимании системы.
Поэтому хороший нейминг требует честного ответа: мы уже знаем смысл этого правила или пока только умеем его вычислять?
9 · 2.9K ·