Большинство ответов здесь довольно общие, но есть ряд практических вещей, которые вы можете сделать при разработке кода, чтобы сделать ошибки менее вероятными. То, чем они являются, будет отличаться в зависимости от языка, но, например, общий источник ошибок зависает, если операторы - многие языки не требуют, чтобы вы заключили в скобки код, если это одна строка - например,
if fred==bill dosomethingtofred() else dosomethingtobill();
Это часто приводит к ошибкам, особенно если код редактируется позже. Я также не брал в скобки тест здесь, поскольку это допустимо в некоторых языках и является потенциальным генератором ошибок. Сам я буду всегда , без исключения, структурировать оператор if в полном объеме, выложенный по всему языку, например
if (fred==bill) {
dosomethingtobill();
}
else {
dosomethingtofred();
}
(обратите внимание, лично я предпочитаю конец строки {. Некоторые люди недовольны этим, и в кооперативной среде, вероятно, лучше использовать новый стиль линии, однако я работаю консультантом, прежде всего пишу код, который я и я буду поддерживать строго придерживаться стандартов отступов, поэтому дополнительная компактность кода окупается)
Подобные методы могут применяться в большинстве языков в широком диапазоне конструкций кода. Я бы посоветовал вам внимательно изучить, где вы делаете глупые ошибки, затем подумать, какие структуры кода помешают вам сделать это, и использовать их каждый раз, когда будете двигаться вперед. У меня есть довольно широкий спектр этих конструкций, собранных за несколько лет (для другого примера все мои sql выложены одинаково). Помимо уменьшения количества глупых ошибок, это также дает дополнительное преимущество, заключающееся в том, что я могу вернуться к коду через несколько лет и очень быстро получить функциональность.