转载请注明出处:http://my.oschina.net/u/1474965/blog/299824程序员
重构是一件如影随行的事数据库
1、什么叫作重构编程
重构即不改变现有软件行为的基础上,让代码更容易理解和让代码更容易修改。spa
通俗来说重构就是整理代码但又有其好多方法论.net
2、为何要重构设计
对于今天的工做我了解的很充分;对于明天的工做我了解的不够充分,若是我纯粹只为今天工 做,明天我将没法工做blog
1.改进软件设计,去除没必要要的冗余,保持特有的代码结构。接口
2.重构让软件更容易理解,让本身更准确的理解别人的代码开发
3.重构能帮助咱们找到bugget
当咱们重构时,咱们会深刻理解代码的行为,并加入本身的理解反馈,从而找出bug
4.提升编程速度
良好的设计是维持软件快速开发的根本
3、什么时候重构
重构覆盖整个程序编写的全过程,重构的直接缘由每每是帮助本身更好的理解须要修改的代码
1.添加新功能时
在添加新功能时把代码结构理清,就能够从中理解更多的东西
重构是最快捷的途径,由于重构是一个快速流畅的过程,一旦完成重构新特性的添加就会更快速、流畅。
2.改bug时重构
3.复审代码时重构
4、重构的难题
1.数据库
2.修改接口
若是接口改了任何状况均可能发生,由于接口可能被那些找不到的,即使是可以找到也不能修改的代码使用。
若是重构改变了已发布的接口,你必须同时维护新旧两个接口,让旧接口调用新接口,并将旧接口标记为deprecated
5、什么时候不应重构
1.当软件运行很不稳定时,就要考虑重写,由于重构一个不稳定的程序,还不如重写来的简单。
未完成的重构像债务同样,随着时间的流逝会承受必定的利息的,复杂的代码形成的维护和扩展困难就是利息,你能够承受必定的利息,但利息过高就会被压垮!
我不是一个伟大的程序员,我只是有着一些优秀习惯的好程序员——Kent Beck