С тех пор, как я впервые написал
if ($a = 5) {
# do something with $a, e.g.
print "$a";
}
и прошел обычную головоломную сессию
- почему результат всегда верен
- почему $ a всегда 5
до тех пор, пока я не понял, я назначил 5 $, вместо сравнения.
Поэтому я решил написать такое условие выше как
if (5 == $a)
другими словами:
всегда помещайте постоянное значение слева от оператора сравнения, что приводит к ошибке компиляции, если вы забудете добавить второй знак "=".
Я склонен называть это защитным кодированием и склонен полагать, что это двоюродный брат защитного программирования , не в алгоритмическом масштабе, а по ключевому слову.
Какие защитные методы кодирования вы разработали?
Одна неделя спустя:
Большое «спасибо» всем, кто ответил или может добавить другой ответ в будущем.
К сожалению (или, скорее, к счастью!), Нет единого правильного ответа. Для этого мой вопрос был широким, спрашивая больше мнений или опыта, а не фактов.