《重构——改善既有代码的设计》读书笔记

最近公司开展读书月活动,免费提供书籍要求读完上交读书笔记一篇

 

我借了《重构——改善既有代码的设计》,在这边小小做下笔记

 

重构手法:

1、Extract Method 提炼函数

     必须考虑局部变量的使用,基本分为1)没有局部变量影响 2)局部变量在抽取代码段中只是读取 3)局部变量在代码段中有修改这3中情况

做法:

      创造一个新函数,根据这个函数的意图来对它命名(以它做什么命名,而不是以它怎么做命名)

将提炼出的代码从源函数复制到新建的目标函数中

仔细检查提炼出的代码,看看其中是否引用了“作用域限于源函数”的变量(包括局部变量和源函数参数)

检查被提炼代码段,看看是否有任何局部变量的值被它改变

将被提炼代码段中需要读取的局部变量,当做参数传给目标函数

处理完所有局部变量之后,进行编译

在源函数中,将被提炼代码段替换为对目标函数的调用

编译测试

 

2、Inline Method 内联函数

     这种重构是清楚间接引用带来的复杂度的手法,目标函数必须足够简单,源函数已经足以说明函数用途

做法:

检查函数,确定它不具有多态性

找出这个函数所有被调用点

将这个函数的所有被调用点都替换为函数主题

编译测试

删除该函数的定义

 

3、Inline Temp 内联临时变量

做法:

检查给临时变量赋值的语句,确保等号右边的表达式没有副作用

如果这个临时变量并未被生声明为final,那就将它声明为final,然后编译

找到该临时变量的所有引用点,将他们替换为“为临时变量赋值”的表达式

每次修改后,编译并测试

修改完所有引用点后,删除该临时变量的声明和赋值语句

编译测试

 

4、Replace Temp with Query 以查询取代临时变量

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值