软件重构

软件重构

重构工具箱

  1. 抽取方法:将代码段提取出来,形成单独的函数
  2. 抽取类:将函数或代码段提取出来,形成单独的类
  3. 抽取接口:将相似的,或者同类型的代码抽取出来形成接口,以及接口下的多个实现

重构的步骤

第一步:分解大函数

对于超级大函数,解决的最有效的方法就是分解,按照功能一步一步的进行分解,还原其应有的优化结构。这个过程我们常用的重构方法是“抽取方法”

对于重复的代码,应抽取到一个统一的函数中为其他各处所调用

一些块操作的语句,如条件语句、循环语句、try语句,都可能成为抽取函数的标志

常见的问题:

将代码从原函数中抽取出来形成新的函数,数据只能通过参数和返回值进行交互,这将给我们带来诸多麻烦

第二步:拆分大对象

拆分大对象采用”职责驱动设计“思想:就是要求我们设计的所有类和接口都要有自己的职责定义。儿类和接口内部的所有方法和属性都要围绕着该职责来进行,它们都是高度相关的。每个类和接口绝不去做跟自己职责无关的事情

拆分大对象采用的重构方法为抽取类

第三步:提高代码复用率

当重复代码存在于同一对象时-抽取方法

当重复代码存在于不同对象中时-抽取类

不同对象中复用代码的另一种方法-封装成实体类

当重复代码所在类具有某种并列关系时-抽取父类

当出现继承泛滥时-将继承转换为组合,将代码不同的部分封装到一个统一接口下的多个实现类中

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值