重构技巧

重新组织你的函数
在对象之间搬移特性
重新组织数据
简化条件表达式
简化函数调用
处理概括关系

提炼函数1




    



    



    



    



    



    



    



    

转化后:




    



    



    



    



    



    



    



    



    



    



    



    



    



    



    



    

提炼函数2:清除注释




    



    



    



    



    



    



    



    



    

转化后:




    



    



    



    



    



    



    



    



    



    



    



    



    



    

将临时变量内联化:




    

转化后:


以查询取代临时变量:




    



    



    



    

转化后:




    



    



    



    



    



    



    



    

引入解释性变量:




    



    



    



    



    

转化后:




    



    



    



    



    



    



    

剖解临时变量:




    



    



    



    

转化后:




    



    



    



    

移除对参数的赋值:




    



    



    



    

转化后:




    



    



    



    



    



    

提前退出函数:




    



    



    



    



    



    



    



    



    



    



    

转化后:




    



    



    



    



    

Split Loop:




    



    



    



    



    



    



    



    



    



    



    



    

转化后:




    



    



    



    



    



    



    



    



    



    



    



    



    



    



    

Split Loop-2




    



    



    



    



    



    



    



    



    



    



    



    



    



    



    



    



    



    



    

在对象之间搬移特性:

搬移函数(Move Method)
搬移值域(Move Field)
提炼类(Extract Class)
将类内联化(Inline Class)
隐藏[委托关系](Hide Delegate)
移除中间人(Remove Middle Man)
引入外加函数(Introduce Foreign Method)
引入本地扩展(Introduce Local Extension)

分解表达式:




    



    



    

转化后:




    



    



    

Remove Double Negative

if ( !item.isNotFound() )

if ( item.isFound() )

转载于:https://www.cnblogs.com/GnagWang/archive/2010/04/02/1703361.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值