读书笔记2014第4本:程序员修炼之道-从小工到专家(第六章:当你编码时)
第六章 当你编码时
31 靠巧合编程
软件开发者,每天就像工作在雷区,有成百的陷阱等着抓住我们。
多余的或不必要的代码可能这次能够正常运行,但换个环境可能就会崩溃,另外会使代码变慢,或引入新的bug。总之,不要靠巧合编程。
要想着尽可能在开发周期的早期抓住并修正错误,道理很简单,但在项目进度压力大的时候,把这句话忘在脑后。
为编码工作划定优先级,把时间花在重要的上面,经常也是最难的部分。但如果基础设施不正确,再花哨的界面或装饰也没有什么用。
32 算法速率
没有什么可说的,就是o()表示法。
33 重构
现在的IDE中的重构功能已经相当强大,真是太方便了。如果IDE里不支持重命名的重构,我会疯掉的。
如果发现了这些情况,说明需要重构了:重复、非正交的设计、过时的知识、性能。
1)不要试图在重构的同时加入新功能。
2)在开始重构前,确保你拥有良好的测试。
3)采用短小、深思熟虑的步骤,每一步都执行一遍你的单元测试代码。
34 易于测试的代码
编写单元测试会给别人(甚至是将来的自己)提供代码调用的例子,例于重构时的回归测试。
要使用xUnit之类的测试工具。
可以设置某种热键,让软件开发人员看到程序内部的错误日志。
35 邪恶的向导
不要使用你不理解的向导代码。
向导代码确实给你生成了一大堆代码,而且功能也很强大。但它们为你创建了代码,然后就走了。如果你不真正理解它们,将来就会给你带来麻烦。
第一章 注重实效的哲学
第二章 注重实效的途径
第三章 基本工具
第四章 注重实效的偏执
第五章:弯曲或折断
第六章:当你编码时
第七、八章
----==== Email: slofslb (GTD) qq.com 请将(GTD)换成@ ====----
版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
作者:申龙斌的程序人生
---- 魔方、桥牌、象棋、游戏人生...
---- BASIC、C++、JAVA、C#、Haskell、Objective-C、Open Inventor、程序人生...
---- GTD伴我实现人生目标
---- 区块链生存训练
---- 用欧拉计划学Rust编程
---- 申龙斌的读书笔记(2011-2019)
----