构建复杂的应用程序 —— 重用与重构

实际中经常用到这样的问题:需要的程序部件和某个已有部件很像,但也略有不同。在这种情况下,一个简单想法就是把原来的代码复制一份,在其基础上修改。但是,一旦复制了代码,引入了重复片段,很多麻烦便会不可避免地出现。维护两份类似代码很麻烦,

  • 不但两者都可能需要修改,
  • 还要确保维护修改的一致性。

1. 重用的实现:通过继承和扩充

面向对象编程技术为解决这方面的问题提供了支持,允许基于已有基类定义新类(派生类)。这种派生类将:

  • (1)继承基类的所有功能(数据域和方法)
  • (2)可以定义新的数据域与方法
  • (3)还可以重新定义基类里已定义的方法(覆盖已有方法)

2. 复用的度量

  • 对于一个函数,如何度量其的复用程度,使用:扇入(fin-in)扇出(fan-out)
    • 扇入:函数内部调用(依赖)的其他函数;
    • 扇出:当前函数,被多少其他函数所依赖;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五道口纳什

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值