Answers:
调试的难度是一开始编写代码的两倍。因此,如果您尽可能聪明地编写代码,那么根据定义,您不够聪明,无法对其进行调试。
—布莱恩·W·克尼根(Brian W. Kernighan)
始终进行编码,好像最终维护您的代码的那个人会是一个暴力的精神病患者,知道您的住所。
—里克·奥斯本(Rick Osborne)
您可以拥有该项目:
- 准时完成
- 完成预算
- 正确完成
选择两个。
—未知
有些人遇到问题时会认为“我知道,我会使用正则表达式”。
现在他们有两个问题。
—杰米·扎温斯基
在理论上,理论与实践之间没有区别。但是,实际上有。
— Jan LA van de Snepscheut
您可以在绘图台上使用橡皮擦或在工地上使用大锤-Frank Lloyd Wright
不完全是编程引号,但它肯定适用。
用代码行衡量编程进度就像按重量衡量飞机建造进度。
- 比尔盖茨
计算机科学中有2个难题:缓存失效,命名和1位错误。
(实际上,在我整理列表时,http://q4td.blogspot.com/search/label/programming中的所有内容都可以看到。)
一个月内有九个人无法生育。
-弗雷德·布鲁克斯(Fred Brooks),《神话人月》
我们应该忘记效率低下的问题,例如大约97%的时间:过早的优化是万恶之源。然而,我们不应放弃我们那临界的3%的机会。
— Donald Knuth,“ 转到语句的结构化编程”,《 JACM计算调查》,第6卷,第4期,1974年12月,第268页
摘录自以下两段,不仅说明了他得出上述结论的原因,而且还提供了有关如何避免此错误的信息:
毫无疑问,提高效率会导致滥用。程序员浪费大量时间来考虑或担心程序非关键部分的速度,而在考虑调试和维护时,这些提高效率的尝试实际上会产生严重的负面影响。我们应该忘记效率低下的问题,例如大约97%的时间:过早的优化是万恶之源。
然而,我们不应该放弃那关键的3%的机会。优秀的程序员不会因这种推理而沾沾自喜,他应该明智地仔细看待关键代码。但只有在识别出该代码之后。对程序的哪些部分真正关键进行先验判断通常是一个错误,因为使用测量工具的程序员的普遍经验是他们的直观猜测会失败。(...)
代码的前90%占开发时间的前90%。剩下的10%的代码占了开发时间的90%。
— 汤姆·嘉吉
计算机科学与计算机无关,而天文学与望远镜有关
— Edsger Dijkstra
如果调试是消除软件错误的过程,则编程必须是放入它们的过程
。— Edsger Dijkstra
语言只有两种:人们抱怨的语言和没人使用的语言
— Bjarne Stroustrup
Unicode支持不是“功能”。这是预期的行为。
当然,它非常具体,但这是我的最爱,因为过时的字符集仍被广泛使用...
注释您的代码就像清洗浴室-您永远都不想做,但是确实为您和您的客人创造了更愉快的体验。
—瑞安·坎贝尔
不能完美地解决一切,而不能完全解决问题。
—法国作家安托万·德·圣埃修伯里(1900-1944),霍姆斯(1939)(看来,达到完美不是在没有什么可以补充的时候,而是在没有什么可以补充的时候。)
Java代表JavaScript,汽车代表地毯。
- 克里斯·海尔曼
作为制定通过埃里克雷蒙:
莱纳斯定律
有了足够大的Beta测试人员和合作开发人员基础,几乎每个问题都将得到快速表征,并且解决方案对于某人来说是显而易见的。
或者,非正式地,
只要有足够的眼球,所有的bug都是浅的。