重新认识重构

2019-08-23  本文已影响0人  随手点灯

1. 定义: 重构是在不改变软件可观察行为的前提下改善其内部结构.

2. 不改变软件行为只是对重构的最基本要求,要想真正让重构技术发挥威力,就必须做到"不需了解软件行为".

3. 代码被阅读和修改的次数远远多于它被编写的次数,保持代码的易读,易修改的关键,就是重构,对框架如此,对一般的软件也是如此.

4. 什么是重构: 在不改变代码外在行为的前提下,对代码做出修改,以改进程序的内部结构.重构是一种经过千锤百炼形成的有条不紊的程序整理方法,可以最大限度减少整理过程中引入错误的几率,本质上来说,重构是在代码写好之后改进它的设计.

5. 重构的步骤过于简单:

    1. 把某个字段从一个类迁移到另外一个类

    2. 把某些代码从一个函数拉出来构成另外一个函数

    3. 在继承体系中把某些代码推上推下就行了

    4. 但是聚沙成塔,这些小小的积累可以从根本上去改善代码的设计质量.

6. 第一个重构例子:

    1. 搭建一个非常舒适的测试环境

    2. 找出代码的逻辑泥团并提取出一个新的函数. Extra Method

    3. 找出函数的局部变量和参数,如果不会被修改的变量可以作为参数传入新的函数,如果被修改,需要格外小心

    4. 进行测试,看看重构后有没有问题

    5. 修改函数中的变量名称,便于理解

    6. 把这个函数移动到专属类中. Move Method

    7. 继续测试

    8. 去掉临时变量,只存在所属函数当中

7. 重构手法

    1. Extract Method

    2. Move Method

    3. Replace Conditional with Polymorphism

    4. Self Encapsulate Field

    5. ReplaceType Code with State/Strategy

上一篇下一篇

猜你喜欢

热点阅读