重构在开发中的作用不可或缺,尤其在敏捷开发模式被大家接受以来。
下面文字来自Martin Fowler的《重构:改善即有代码的设计》的总结。
- 什么是重构
重构是不影响程序外部行为的前提下,改善内部结构,让软件设计更好,更容易理解,更持久、健壮、可扩展。
开发时两种行为:增加新功能和重构。不可以并行。
- 为什么要重构
改进软件设计
帮助尽早的找到Bug
提升效率
使软件容易理解
改善设计、提高可读性、减少Bug都是为了提高后发优势。
- 何时重构
重构应该是随时随地进行。不应该为重构而重构。
三次法则:第一次做某件事只管去做;第二次做类似的事会产生反感,但无论如何还是可以去做 第三次 再做类似的事情,就应该重构了。
添加功能的时候
修复bug的时候
复审代码,即Code Review时候
- 注:
项目后期不要重构;代码太乱时也不要重构,转移个位置即可。
重构可以弥补设计的灵活性和适应性。
重构尽量使用工具进行,需要有一个可靠的测试环境,可靠的单元测试。
小步修改,即时测试验证。
閱讀更多 EndlessTechWorld 的文章