想改良一个烂设计为好设计吗?想增加或维护代码功能时更加简单吗?重构无疑是其中最好的方法之一,既然它是好的,我们就要把它发挥到极限,把重构发挥到极限的方法就像kent beck说的,采用两顶帽子的原则,工作中不断的交换帽子,^_^
重构的好处
1、改良设计
设计在一开始不可能做的很完善、很完美,只能是通过在开发的过程不断的去改良和完善,重构就是最好的方法之一,通过重构可将设计快速的改良。
2、增加或维护代码功能时更加的简单
重构进行的原因主要还是因为在增加或维护代码时进行的很困难,这个时候重构原有代码就是为了让增加或维护代码功能变得更为的简单。
重构的实现
重构并不是什么新思想、新技术或者新方法,是一个50年代就已经有N多人融入他们的开发中形成习惯的过程,那么重构到底应该怎么去做呢?在这点上我觉得我没有什么多发言的意义,建议大家参考《重构》一书,书中阐述了很多优秀的编码习惯以及重构进行的场合、方法,重构不象设计模式,重构应该被形成习惯融入到开发中去,重构不是一项独立的任务。
重构依赖于良好的测试体系,如之前讲过的单元测试的贯彻。
Java的开发人员更是可以借助IDE来快速的完成重构的工作。
经验总结
慢慢的重构也变成了我的开发习惯,重构保证了简单设计的可行,同时也保证了软件的质量。
有了重构,我在开发中就可以实行”不要求高质量的实现代码,但要求高质量的测试代码“,高质量的实现代码在任务完成时即可通过重构的技术去进行,就像我以前一篇blog提及过的一样,我在代码实现过程采用的就是:
1、编写能够满足测试的代码。
2、对代码进行重构。
2.1 按照《重构》的一些模式进行
2.2 OO
2.3 设计模式