《代码大全》读书心得笔记第五部——代码改

发布时间:2019-02-28 18:39:04编辑:auto阅读(1980)

    工欲善其事,必先利其器。
    本文主要是解释通过代码优化,提升代码性能的操作;也主要是对所学知识的一个整理。

    一、软件质量概述

    我们在软件的开发过程应该需要对变更控制,有效地管理和控制变更是实现代码高质量的关键一步;我们要提升软件质量,还需要对结果进行量化,只有进行结果的量化才能有效地反馈计划的成功与否;在开发过程中,制作原型也是很重要的一步,原型是指开发出系统中关键功能的实际模型,构建原型能产生更完善的设计,更贴近用户的需求,以及更好的可维护性。软件质量的普遍原理就是改善质量以降低开发成本。

    二、开发者测试

    软件测试主要包括:单元测试、组件测试、集成测试、回归测试、系统测试。

    • 开发者在编码的过程中推荐的测试方法
    • 对每一项相关的需求进行测试,以确保需求都已经被实现
    • 对每一个相关的设计关注点进行测试,以确保设计已经被实现。
    • 用基础测试来扩充针对需求和设计的详细测试用例
    • 使用一个检查表,其中记录着你在本项目迄今为止所犯的,以及在过去的项目中所犯的错误类型

    测试技巧

    • 等价类划分
    • 边界值分析
    • 采用手工检查的测试用例(简单的对数据进行手动计算和期望值做比对)

    还有一些就是开发测试中的一些小tips:

    • 错误并不是均匀分布在项目当中,还是符合28远程
    • 应当在开发中通过工具加快自己开发的速度和准确性

    三、调试

    开发者在开发的同时还应当有相应的技巧对代码进行调试。

    下面介绍查找代码缺陷的一些调试小技巧

    • 逐步缩小嫌疑代码范围
    • 对之前出现过缺陷的类和子程序保持警惕
    • 检查最近修改过得代码
    • 增量式集成
    • 同其他人讨论问题
    • 调试的时候一次只做一个改动

     

    四、代码调整策略


    首先我们需要搞懂的是影响代码的效率的几个低效之源

    • 分页
    • 输入/输出操作
    • 系统调用

    因此我们在开发过程,可以从这些角度进行优化。

    那么我们应该如何去对性能进行调整,应该遵循以下这种方式,稳健地进行代码的性能提升

    • 做性能调整之前先要保留调整之前的版本,这样子方便回退;
    • 再者每进行一次调整就应该测试一次,观察性能有没有改善,如果没有,那么回退到调整之前的版本。

    需要注意的是:性能测量应当要精确,应当用程序分配给程序的CPU时钟计算,而不是日期时钟

     

    五、代码调节技术


    主要介绍如何进行代码的优化方法。

    主要讲提高代码运行速度的方法,同时对如何减小代码的资源占用给出建议

    • 在知道答案之后停止判断
    • 按照出现的频率来调整判断顺序
    • 用查询表替代复杂表达式,如果存在若干个结果,我们可以通过直接将结果写入表中的方法来避免直接对结果的计算,从而减少开销,可以直接查表
    • 使用惰性求职,即在需要该数据在计算,而不是一下子都计算出来
    • 将判断外提,尽量减少在循环语句中的操作
    • 将循环展开,也可以提升性能
    • 设置哨兵值,也就是在得到所需要结果的时候能够及时跳出循环,而不是继续执行
    • 把最忙的循环放在最内层
    • 使用整型数而不是浮点数
    • 使用缓存机制
    • 小心系统函数,因为系统函数的开销是很大的
    • 用低级语言重写代码

     

关键字