重构与模式
重构
重构就是一种“保持行为的转换”,是一种对软件内部结构的改善,目的是在不改变软件的可见行为的情况下,使其更容易理解,修改的成本更低
重构过程包括去处重复,简化复杂逻辑和澄清模糊的代码,重构是,需要对代码的无情针砭,以改进其设计。这种改进可能很小,比如只是一个变量名,也可能很大比如合并类。
重构的动机,比较具有普遍性的就是:
- 新增代码更加容易
- 改善既有代码的设计
- 对代码理解更为透彻
- 提高编程趣味性
复合重构与测试驱动的重构
复合重构是有多个低层次重构组成的高层次重构,也就是说将一个大部分进行拆分,拆成多个小部分进行重构,通过测试来验证他的正确性。
测试驱动的重构,说到这里就不得不提起TDD,先写单元测试,再根据测试写出相应解决代码。这样好的地方是,能确保实现结果正确。
模式
设计模式不过是将前人的经验总结起来的几种既定的方法。具体的模式在使用过程中是需要根据实际情况进行演变,而不是使用既定的模式套用。
对设计模式的理解是需要大量的应用,每个开发阶段对模式的理解都是不一样的,完全可以通过重构的方式来实现对模式的理解。
希望在我下一个3年经验的时候能回头看看再来看一遍设计模式,也许会有不一样的理解