为什么程序出故障?虽然自世界上第一位女程序员艾达·洛夫莱斯(Ada Lovelace)在上世纪第一次看到通用计算的潜力以来我们已取得了很大进展,但是我们编写的软件还是错误百出。这些年来,尽管我们开发出许多高级方法来确保代码的成功,但是程序还是不断的出故障。
原因何在?
虽然这个问题的答案多种多样,但我们还是决定提供一个务实的答案。程序员难免犯错。他们有时马虎了事。他们并不总是使用最佳工具或最佳实践。
我在加州大学伯克利分校教面向对象编程这门课,我在学校教优秀编程实践所花的时间与帮助学生理解代码本身所花的时间相比只多不少。我在课堂上看到许多常犯的错误,本文就介绍其中几个常见错误。
我还联系上了西北理工大学工程学院的詹姆斯·A·康纳(James A. Connor)教授,请他介绍其学生常犯的一些错误。
推荐下我的前端群:524262608,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括我自己整理的一份前端资料和零基础入门教程,欢迎初学者和在进阶中的小伙伴。
第一个错误:糟糕的注释方法
第二个错误:糟糕的变量命名
第三个错误:没有实验笔记(lab notes)
第四个错误:不用一种人类语言编写
第五个错误:糟糕的代码格式
第六个错误:糟糕的错误检查
某位著名的将军曾经说过,遇到敌人时,计划根本不管用。我在此基础上改动一下,遇到用户时,你的代码根本不管用。尽管你认为自己知道用户会如何使用代码,但你其实并不知道,相信我。
用户会搞坏你的代码。
正确的处理方式就是借助测试和错误检查。错误检查是指这种做法:检查代码中每一次操作的结果。确保它符合你的预期,或者确保你的代码可处理意外的结果。
第七个错误:使用打印输出语句,而不是真正的调试器
第八个错误:使用魔数(magical number)
第九个错误:马虎对待的日期和时间
再次,有许多好的语言和系统库可以处理这两种时间问题。常常更好的办法是使用现有的库,而不是编写自己的时间计算代码。