- Запах кода 152 — Логический комментарий
- Проблемы
- Решения
- Контекст
- Образец кода
- Неправильный
- Правильно
- Обнаружение
- Метки
- Заключение
- Отношения
- Запах кода 151 — Комментированный код
- Maxi Contieri ・ Jul 22 ・ 2 min read
- Кредиты
- Программная инженерия Великие цитаты
- Maxi Contieri ・ Dec 28 ’20 ・ 13 min read
- Как найти зловонные части вашего кода
- Maxi Contieri ・ May 21 ’21 ・ 7 min read
Запах кода 152 — Логический комментарий
Временные хаки могут стать постоянными
TL;DR: Не меняйте семантику кода, чтобы пропустить код.
Проблемы
-
Читабельность
-
Невыявление внимания
Решения
-
Если вам нужен временный хак, сделайте его явным.
-
Положитесь на свою систему контроля исходных текстов
Контекст
Изменение кода с помощью временного хака — очень плохая практика разработчика.
Мы можем забыть некоторые временные решения и оставить их навсегда.
Образец кода
Неправильный
if (cart.items() > 11 && user.isRetail()) {
doStuff();
}
doMore();
// Production code
// the false acts to temporary skip the if condition
if (false && cart.items() > 11 && user.isRetail()) {
doStuff();
}
doMore();
if (true || cart.items() > 11 && user.isRetail()) {
// Same hack to force the condition
Правильно
if (cart.items() > 11 && user.isRetail()) {
doStuff();
}
doMore();
// Production code
// Either if we need to force or skip the condition
// we can do it with a covering test forcing
// real world scenario and not the code
testLargeCartItems() {}
testUserIsRetail() {}
Обнаружение
[X] Полуавтоматическое
Некоторые литеры могут предупреждать о странном поведении.
Метки
- Комментарии
Заключение
Разделение задач чрезвычайно важно в нашей профессии.
Бизнес-логика и хаки всегда должны быть разделены.
Отношения

Запах кода 151 — Комментированный код
Maxi Contieri ・ Jul 22 ・ 2 min read
Кредиты
Фото Belinda Fewings on Unsplash
Спасибо @Ramiro Rela за этот совет.
Вы можете не думать, что программисты — художники, но программирование — чрезвычайно творческая профессия. Это творчество, основанное на логике.
Джон Ромеро

Программная инженерия Великие цитаты
Maxi Contieri ・ Dec 28 ’20 ・ 13 min read
Эта статья является частью серии CodeSmell.

Как найти зловонные части вашего кода
Maxi Contieri ・ May 21 ’21 ・ 7 min read