软件构造6

Programing for/with reuse
1、Programing for reuse 开发可复用的软件
开发成本高于一般软件的成本:要有足够高的适应性
性能差些:针对更普适场景,缺少足够的针对性
2、Programing with reuse 使用已有软件进行开发
可复用软件库,对其进行有效的管理
往往无法拿来就用,需要适配

最主要的复用是在代码层面,但软件构造过程中的任何实体都可能被复用。
1、代码层面:
在这里插入图片描述
2、类复用:
inheritance继承
delegation委托
3、包复用: API/Package
4、System-level reuse: Framework 框架
框架:一组具体类、抽象类、及其之间的连接关系
开发者根据framework的规约,填充自己的代码进去,形成完整系统;
将framework看作是更大规模的API复用,除了提供可复用的API,还将这些模块之间的关系都确定下来,形成了整体应用的领域复用
开发者:增加新代码、对抽象类进行具体化

LSP——Liskov Substitution Principle Liskov替换原则
1、Behavioral subtyping 行为子类型
子类型多态:客户端可用统一的方式处理不同类型的对象
在这里插入图片描述
2、LSP
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值