阅读笔记
2。1
程序要进行单元测试来保证程序的健壮性。
还要进行回归测试,就是在原版本上运行的测试用例通过的话,在下一版本上再运行时,却没有通过,这就是软件"退化",所以需要进行回归测试。在新版本上运行所有已经通过的测试用例,来验证后面的版本没有出现软件"退化"的情况。
但是如果是模块功能发生了变化,那么测试用例也需要修改来测试新的模块。
2。2
程序还要进行效能分析,这个是以前从来没有了解过的。就是找出程序运行时,哪个函数或方法消耗的时间多,就是程序运行的瓶颈所在,进行效能分析,从而对相应模块的代码进行优化。进行效能分析的方法有抽样和代码注入,各有优缺点。不过普遍用的是先用抽样方法找到瓶颈所在,然后对特定模块的代码用代码注入的方法进行详细分析。还要注意避免没有做分析就过早进行"效能提高"。
2。3
对程序员或者工程师是有能力成熟度模型的。工程师在需求分析和测试上花的时间更多,而在具体编码中比大学生花的时间少一半多,从学生到职业程序员,以后在写代码的时间会少很多,更多是用在分析上。
过去的看法:
程序员只要把程序功能实现就好,别的不用考虑。
这样为什么不好:
如果只是考虑程序功能的实现,这个在以后用户的使用过程中,会不会出现意外情况导致软件崩溃?使用的效率怎么样,就是软件的运行效率?如果没有一个优化的过程,肯定会失去用户的。
解决办法:
每次写完一个程序之后,先看看功能是否实现,然后看算法上是否可以进行优化,也就是程序执行效率上的优化。