本文摘译自Things to Optimize Besides Speed and Memory,由于本人英语水平有限,仅翻译了一些重点部分,多有错误,敬请谅解。
与优化内存,优化速度一样重要的优化:
1. 程序的耗电量,产热量和风扇噪音(笔者注:减少无谓的运算,不要用无限循环进行等待)。
2. 写磁盘,注意是否经常重写一个未改变的文件到硬盘上。
3. 软件文档的大小,复杂度。
4. 阅读tutorial的时间,以及知识要求。
5. 网络流量
6. #include文件的大小,更准确的讲是对接口的优化(笔者注:减少代码中对include的滥用也是很重要的,过多无用的include会使代码乱作一团,也会在修改头文件后,重编译许多毫无影响的模块,具体内容可参见"Effective C++")。
7. 用户完成一项功能时所需要的点击次数,属于UX上的优化。
8. 软件启动时间。
9. 工程Rebuild所需的时间,以及完成一个复杂逻辑的修改后,确认无Bug所需的时间。
10. 需要记录在文档中的特殊功能或特殊代码的数量(笔者注:尽量让软件功能简单明确,代码简洁易读)。