1. 代码被阅读和被修改的次数远远多于它被编写的次数。
2. 每次只前进一小步。
3. 代码行数越短就越有力。
构筑测试体系:
1. 编写优良的测试程序,可以极大地提高编程速度。
2. 类应该包含他们自己的测试代码。
3. 确保所有的测试都自动化,让他们检查自己的测试结果。
4. 撰写测试代码的最佳时机是在开始编程之前。当你需要添加特性的时候,先写相应的测试代码。编写测试代码其实就是在问自己:添加这个功能需要做什么?编写测试代码还能使你把注意力集中于接口,而非实现(这永远是好事)。
5. 每个类都应该有一个测试函数,并以它来测试自己这个类。
6. 每当收到一个Bug Report,请先写一个Unit Test来重现。
7. 测试的一项重要技巧就是“寻找边界条件”。
8. 当事情被认为应该会出错时,别忘了检查是否抛出了预期的异常。
有层次的工作,当你重构时,发现某些代码并不正确,你确信可以改正,但现在不要着急,把它们记载在一张卡片上,但不要动手去做这件事情,这是另外一个层次上的事情,如果你现在做了,就会造成层次上的混乱,这不是一个好主意,不要让他们打乱了你手上的工作,保持目标的一致性很重要。在完成了你目前层次上的事情之后,把卡片拿起来,集中精力去考虑,然后动手去做,这样更容易取得更好的效果,而且不会造成混乱。