《Code Complete》ch.23 调试
2014-07-03 16:28
86 查看
WHAT?
调试——发现错误的一种手段WHY?
相对于不善于调试的程序员,善于调试的程序员只需要前者1/20的时间就可以找出问题所在HOW?
科学的调试方法
把错误的发生稳定下来:假设-证实/证伪确定错误原因:二分法
同他人讨论问题
忏悔式调试抛开问题,休息一下
修正问题
动手之前先要理解问题理解程序本身,而不仅仅是问题
验证对错误的分析
放松一下
治本,而不是治标
修改代码时一定要有正确的理由:不要随机地修改代码,在没有理解代码时对她做的改动越大,你对她能正确工作的信息就越低
检查自己的改动:code review
增加对应的单元测试
搜索类似的缺陷:如果你想不出如何查找类似缺陷,说明你对程序的理解程度还不够
编译器的警告信息
不要忽略编译器提出的任何警告信息:做编译器的人对于你所使用的语言的理解要远远胜于你自己用对待错误的态度来处理警告
在项目组范围内使用统一的编译设置:统一的编译配置文件或编译脚本
相关文章推荐
- [调试技巧3]MSVC的调试技巧: Pseudoregisters
- VS.NET提示"试图运行项目时出错:无法启动调试。绑定句柄无效"解决办法
- 调试论坛系统心得
- 带dos调试窗口的win32程序
- elipse远程调试
- IOS消息推送------推送证书的安装与调试
- 快速插入jQuery调试代码
- 调试应用
- python 调试时的逻辑错误
- 单元测试中方法运行测试和调试测试不起作用原因
- msm8916 lcd 相关调试点指导
- 基于硬件模拟器的操作系统调试技术
- 苹果真机调试证书获取
- Eclipse中运行MapReduce程序控制台无调试信息-log4j
- LCD Mipi 调试方法及问题汇总
- μClinux嵌入系统中外部硬件设备的快速调试方法
- 【转帖】使用WinDBG和VMware调试驱动程序
- MyEclipse 调试异常:Exception processing async thread queue
- Jboss配置远程调试