高效程序员与低效程序员
是否愿意执行这种检查,是高效程序员和低效程序员之间的一项关键差别.高效的程序员既会在脑海里进行模拟,也会手动地执行运算,因为他们知道这些手段将会有助于找出错误来.
低效的程序员会随意地做一些试验,直到他们找到了一种看上去能工作的组合.如果某个循环没有按照想象的那样去工作,低效的程序员可能会把<改成<=.如果还不行,他们就会把循环下表加 1 或者减 1.这样做最终可能会碰出正确的组合来,也可能把原由的错误改成了另一个更微妙的错误.即使这样随意的开发过程能够产生出一个正确的程序,这些程序员也不明白为什么这个程序是正确的.
你可以通过在头脑中模拟和手工运算而获益多多.这种智力训练带来的好处是:在最初的编码阶段少犯错误,在调试阶段更快地找出错误,以及从整体上更好地理解应用程序.它意味着:你能够真正理解你的代码是如何工作的,而不是瞎猜.