看《重构-设计模式》第五章 重构列表和第六章 重新组织函数

本文详细介绍了重构代码的多种手法,包括提炼函数、内联函数、内联临时变量等,旨在通过小步前进、频繁测试的方式提升代码质量。文章还探讨了如何处理过长的函数,通过分解函数提高代码的可读性和复用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第五章:

重构的记录格式:名称、简短概要、动机、做法、范例

寻找引用点:找到对于某个函数、某个字段或某个类的所有引用点,可以通过删除引用点,让编译器帮助找到被悬挂的引用点;

这些重构手法有多成熟:基本技巧:小步前进,频繁测试,这些重构手法都是基于单进程软件的。

第六章:

处理过长函数:提取函数出来,注意局部变量

  • 6.1提炼函数   函数粒度变小,复用性变强;高层函数可读性变强;函数的复写也容易多。

做法:创建新函数-》复制代码段到函数中-》检查临时变量,设置入参-》设置局部变量-》编译,测试

  • 6.2 内联函数: 当函数代码和函数一样清晰明了,直接使用函数的代码,避免使用函数。

做法:检查函数,不具备多态性-》找出所有被调用点,并替换-》编译,测试-》删除函数定义。

  • 6.3 内联临时变量:变量被赋予某个函数的返回值,只使用了一次,阻碍了其他重构手法时,可以将变量去掉。
  • 6.4 以查询取代临时变量 把表达式提炼到独立的函数,对这个表达式的操作改成对函数的调用
  • 6.5 引入解释性变量 将复杂的表达式的结果放进一个临时变量来解释该表达式的用途
  • 6.6 分解临时变量 当临时变量被使用超过一次,既不是循环变量,也不是结果收集变量,针对每次赋值都创造一个独立、对应的临时变量。
  • 6.7 移除对参数的赋值  以一个临时变量取代该参数的位置 java
  • 6.8 以函数对象取代函数 当一个函数很大,其中的局部变量无法提取时,可以将该函数设计成一个对象来操作,其中的局部变量就成了对应的成员变量
  • 6.9 替换算法 将函数本体替换成另一个算法。做法:准备好替换的算法,编译,测试,以原算法的结果为准进行测试。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值