不要破坏软件功能
失误率永远不可能等于零,但你有责任让它无限接近零。
开发中不可避免会有 bug,但对自己的要求得是不允许出现 bug。
让 QA 找不出任何问题
只要是没有把握的代码都不要发布。只是有时上层会让问题遗留以满足发布时间。
如果能够让 QA 完全发现不出 bug,不仅仅是编写代码过程的问题了,自己就先得成为一个合格的 QA 了,但开发不可能那么完全的执行所有测试,时刻进行质量控制。
只能说理想总要有的,就像古时候人们说的大同社会,这时候人们说的共产主义社会。
要确信代码正常运行
这是测试驱动的理念,在写代码前就要先想测试,先写测试代码,再写要测的代码,保证所有代码全部经过测试。
起码现在是做不到。
自动化 QA
举例说明 QA 流程是执行单元测试和验收测试。作为开发,确实不需要执行所有的测试流程,编码环节执行一个单元测试,收尾环节执行验收测试也够了。
不要破坏结构
不要为了发布新功能而破坏结构,结构要易于修改。
架构开始设计好,若调整那可能就是大调整。后续开发多是重构的微调。
要随时修改。每次开发修改或增加功能时,都对当前模块进行重构。
对每个模块,每检入一次代码,就要让它比上次检出时变得更为简洁。每次读代码,都别忘了进行点滴的改善。
就是要随时随地的进行小的重构,让代码变得更好。这是个好方法,每动一个模块,一处代码,就让它比之前的要更好,这样精益求精,能够减少后面遇到问题进行很大的重构的概率。
防止修改带来的新问题,前提是写好的足够的测试代码,能够很快就执行完测试进行验证。