都是一些比较实用的习惯,能让程序的健壮性更强。
1. 断言真的是很实用,能查出一些意外的bug。这点感触比较深,插入一些必要的断言,这样不至于在程序执行N久以后才恍然发现在前面N远处一个参数什么的传错了。,而且几乎不会影响性能。关于断言的使用也有一些注意事项(在《卓有成效的程序员》等书里都有提到),比如:assert(getchar() == 'c');这个断言就影响了程序本身。
2. 对程序进行逐条跟踪。正如作者所说,有可能在逐条跟踪的时候觉得是浪费时间,但这能对这段代码的正确性有很好的把握(至少不会出现提交程序后别人再check 下来的居然编译都不过!),减少不少以后调bug的时间。
3.要注意程序语言里未定义的行为,如对于c里的函数memcpy,当dest~dest+size和 src~ src+size 这两段区间如果有交集的话,结果是未知的。
4. 边写代码边测试。(或者现在流行的测试先行?)
5. 关于程序员和测试员。"程序员测试代码,是从里向外测试,而测试员则是从外向里测试。" 程序员对自己的代码更了解,所以自己通过多加断言等方式测试自己的代码是很有必要的。
6. ......
.......
当然这很多的习惯都要在编码中才能有更好的体会。"临渊羡鱼,不如退而结网"。
用这些朴实的习惯写出易排错的代码。。。
对“用这些朴实的习惯写出易排错的代码。。。”的回应
《编程精粹》热门书评
-
被人忽略的经典
17有用 1无用 codedump 2010-08-12
原文出自 codedump.info.<<编程精粹:编写高质量C语言代码>> 是一本被很多中国程序员所忽视的好书.阅读这本书的时候,我想起了另一本经典:<<程序设计实践>>., 它们有如下的共同点:1) 短小精悍, 不像一些书洋洋洒洒数百页,篇幅小保证...
-
被埋没的明珠
4有用 1无用 孙立 2009-03-25
豆瓣上竟然找不到当年的中文翻译版,可见是少人关心呀。这本书很薄,但内容深刻,每个程序员都应该看看。...
-
一本肝肠断
3有用 0无用 Jay 2011-10-30
一本谭浩强的《C语言程序设计》将一个少年引入了奇妙的C语言世界,从此为之疯狂。 之后接触的《C和指针》、《C陷...
-
从实践总结而来
3有用 0无用 Wuqifu 2012-05-30
原书写于1992年,内容基于作者在Microsoft工作期间编写C语言无错代码的经验之谈,这是一本从实践总结而来的编程书籍,章节不多,但很值得一读!可惜的是,本书出版于二十年前没能与时俱进推出后续更新版本。看的是电子版,记录下读书笔记:你必须养成经常询问怎样编写代码的习惯,本书就是长期坚持询问一些简...
-
只是小部分程序设计tricks
1有用 1无用 swq457080 2011-07-02
刚买这本书的时候对他的期望还是很高的,看完之后,有了些失望。讲思想感觉这本书不如程序员修炼之道,讲具体的编码细节不如代码大全。豆瓣评分居然有9分,感觉还是有些过的,与前面两本书的层次还是有些差距的。这本书中最独特的视角可能就是作者的那些错误代码的分析了,不过其中的例子也不是很多。第一章是用编译器预警...
书名: 编程精粹
作者: Steve Maguire
出版社: 人民邮电出版社
原作名: Writing Solid Code
副标题: 编写高质量C语言代码
出版年: 2009.2
页数: 256
定价: 45.00元
ISBN: 9787115193162