7 大型重构

本文探讨软件设计中的关键重构策略,包括分解继承体系,将过程化设计转化为对象设计,以及提炼继承体系。通过实例说明如何优化类职责,提高代码可维护性和扩展性。

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

1.分解继承体系

如果某个继承体系承担了两个职责,那么分解这个继承体系

// 重构前
class 洗衣机{
    设置脱水时间();
    脱水();

    设置洗衣时间();
    洗衣();
}

class 海尔洗衣机: 洗衣机{
}

class 格力洗衣机: 洗衣机{
}

// 重构后
class 脱水机{
    设置脱水时间();
    脱水();
}

class 洗衣机{
    // 洗衣机具有脱水机的功能
	脱水机 脱水机;

	public 洗衣机(脱水机 脱水机){ ... }

    设置洗衣时间();
    洗衣();
}

class 海尔洗衣机: 洗衣机{
}

class 格力洗衣机: 洗衣机{
}

2.将过程化设计转化为对象设计

意思是将一个过程化的代码改为一个对对象的调用过程,如下步骤:
将数据变为对象的数据,分解对数据操作的行为,并将这些行为移到对象中

3.提炼继承体系

你有某个类做了太多工作,那就试着去分解这个类,一般采用继承体系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值