代码坏的味道07:依恋情结(Feature Envy)

本文探讨了在软件开发过程中,如何通过MoveMethod(搬移函数)和ExtractMethod(提炼函数)重构技巧,解决函数对数据的不当依赖,提升代码质量和可维护性。

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

  函数对某个类的兴趣高过对自己所处的类,通常的焦点就是数据,某个函数为了计算某个值,从另一个对象那儿调用几乎半打的取值函数。这时一个运用 Move Method (搬移函数)把它移到自己该去的地方。有时候函数中只有一部分受这种依恋之苦,这时候使用Extract Method (提炼函数)把这部分提炼到独立函数中,再使用Move Method (搬移函数)带它去它的梦中家园。

         一个函数往往会用到几个类的功能,那么它究竟该被置与何处呢?原则:判断哪个类拥有最多被此函数使用的数据,然后就把这个函数和那些数据摆在一起。如果先以Extract Method (提炼函数)将这个函数分解为数个较小函数并分别置于不同地点,上述步骤就比较容易完成了。

转载于:https://www.cnblogs.com/matchcolor/archive/2010/08/02/1786532.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值