Microsoft编写优质无错C程序秘诀

[入库:2005年11月10日] [更新:2008年9月3日]

本文简介:编写无错代码的最好方法是把防上错误放在第一位。关于这个问题,同样也有许多的技巧。某些技巧与常用的编码惯例有关,但它们不是象“每个人都违背原则”或“没有人违背该原则”这样泛泛地考虑问题,而是对相应的细节进行详细的讨论。要记住,在任何时候跟在大多数人的后面常常是所能选择的最坏一条路。因此在成为别人的追随者之前一定要确定这样做确实有意义,而且不要仅仅因为其它的什么人如此自己也如此。本文档是Microsoft编写优质无错C程序秘诀.

Microsoft编写优质无错C程序秘诀

几年前在一次偶然翻阅Donald Knuth所著《TEXThe Program》一书时,序言中的一段话深深触动了我:

 

我确信TEX的最后一个错误已经在19851127被发现并排除掉了。但是如果出于目前尚不知道的原因,TEX仍然潜伏有错误,我非常愿意付给第一个发现者$20.48元。(这一金额已是以前的两倍。我打算在本年内再增加一倍。你看我是多么自信!)

 

我对Knuth是否曾经付给某人$20.48甚至$40.96元不感兴趣,这并不重要。重要的是他对他的程序所具有的那种自信。那么据你所知,究竟有多少程序员会严肃地声称他们的程序完全没有错误?又有多少敢把这一声称印刷在书上,并准备为错误的发现者付钱呢?

如果程序员确信测试组已经发现了所有的错误,那么他也许敢作这种声明。但这本身就是一个问题。每当代码被打包装送给程序经销商之前,人们在胸前划着十字带着最好的愿望说:“希望测试已经发现了所有的错误”。这一情景我已见过多次了。

由于现代的程序员已经放弃了对代码进行彻底测试的职责,他们没法知道代码中是否有错。管理人员也不会公布测试情况,只是说:“别操那个心,测试人员会为你作好测试的”。更为微妙的是,管理人员希望程序员自己进行代码的测试。同时,他们希望测试员作得更彻底些,因为毕竟这是他们的本职工作。

正如你在本书中将会看到的那样,编写无错代码的技术或许有几百种,程序员能用,但测试人员却无法使用,因为这些技术和代码的编写直接相关。

 

本方案相关附件

本文关键:,Microsoft编写,C程序秘诀,无错代码,
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top