开发者社区> 华章计算机> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

《C语言程序设计进阶教程》一3.4 生产代码与测试代码分离

简介: 本文讲的是C语言程序设计进阶教程一3.4 生产代码与测试代码分离,本节书摘来华章计算机《C语言程序设计进阶教程》一书中的第3章,第3.3节, Intermediate C Programming[美] 陆永祥(Yung-Hsiang Lu) 著 徐东 译 译更多章节内容可以访问云栖社区“华章计算机”公众号查看。
+关注继续查看

3.4 生产代码与测试代码分离
本文讲的是C语言程序设计进阶教程一3.4 生产代码与测试代码分离,你应该编写可以检测出自身bug的程序。如果你想要检查一个数组是否被排序好了,不要在屏幕上打印出元素并用自己眼睛观察。应该写一个检查数组是否排序的函数。代码通常不会打印出调试信息。相反,写一些可以帮助你不用依靠眼睛就能调试的代码。
你应该在编写程序之前就考虑编写测试代码。这是一个普遍的做法,叫作测试驱动的开发。怎样去编写测试代码呢?很多书都写了关于软件测试方面的内容。本节给你一个建议。考虑下面两个关于测试代码的例子。假设func是你想去测试的函数,test_func是测试func的代码。

这两种方法的不同在哪里呢?第一种方法(位于左侧)在程序的函数内部调用测试代码。在第二种方法中(位于右侧),测试代码位于程序外部调用func。这个差异是很重要的,因为第一种方法把测试代码与程序实际需要的代码(有时叫作“生产代码”)混在了一起。结果就是,想要把测试代码移除对你来说是很困难的。第二种方法把生产代码与测试代码分离开,所以你就能在随后很容易地移除测试代码。应该在测试你的程序时采取第二种方法。

原文标题:C语言程序设计进阶教程一3.4 生产代码与测试代码分离

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
C语言程序设计教程任务;初步认识C语言,携君之手,步入编程之路。
C语言程序设计教程任务;初步认识C语言,携君之手,步入编程之路。
0 0
[C语言学习]C语言程序设计基础(三)
[C语言学习]C语言程序设计基础(三)
0 0
[C语言学习]C语言程序设计基础(二)
[C语言学习]C语言程序设计基础(二)
0 0
[C语言学习]C语言程序设计基础(一)
[C语言学习]C语言程序设计基础(一)
0 0
【C语言程序设计】知识点汇总7——排序与查找原理与代码(冒泡排序,选择排序,插入排序,二分查找)
【C语言程序设计】知识点汇总7——排序与查找原理与代码(冒泡排序,选择排序,插入排序,二分查找)
0 0
【C语言程序设计】知识点汇总6——文件操作相关
【C语言程序设计】知识点汇总6——文件操作相关
0 0
【C语言程序设计】知识点汇总5——结构体与共用体
【C语言程序设计】知识点汇总5——结构体与共用体
0 0
【C语言程序设计】知识点汇总4——指针相关
【C语言程序设计】知识点汇总4——指针相关
0 0
【C语言程序设计】知识点汇总3——数组、字符串数组、字符串输入输出相关注意事项
【C语言程序设计】知识点汇总3——数组、字符串数组、字符串输入输出相关注意事项
0 0
【C语言程序设计】知识点汇总2——局部变量与全局变量、编译预处理
【C语言程序设计】知识点汇总2——局部变量与全局变量、编译预处理
0 0
文章
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《前端智能化实践》——逻辑代码生成
立即下载
如何做小程序性能优化
立即下载
用RxSwift写易维护易读的愉悦代码
立即下载