可复用性的度量,形态和外部观察
第3章介绍了软件构造的核心理论(ADT)与技术(OOP),其核心是保证代码质量、提高代码适应性和复用性。
本章面向一个重要的外部质量指标:可复用性——如何构造出可在不同应用中重复使用的软件模块/API?
5-1节探讨可复用软件的形态与特征,下一节学习“如何构造”。
目录
- 什么是软件复用
- 如何度量复用性
- 可复用组件的级别和形态
- 对可复用性的外部观察
什么是软件复用
软件复用是使用现有软件组件实施或更新软件系统的过程。
软件复用的两个观点:
- 面向复用编程:开发出可复用的软件)
- 基于复用编程:利用已有的可复用软件搭建应用系统
为什么需要复用:
- 降低成本和开发时间
- 经过充分测试,可靠、稳定
- 标准化,在不同应用中保持一致
Development for reuse: 开发可复用的软件
- 开发成本高于一般软件的成本:要有足够高的适应性
- 性能差些: 针对更普适场景,缺少足够的针对性
Development with reuse: 使用已有软件进行开发
- 可复用软件库,对其进行有效的管理
- 往往无法拿来就用,需要适配
如何度量可复用性
软件可复用性的度量需要考虑:
- 复用的机会有多频繁?
- 复用的场合有多少?
- 复用的代价有多大?(包括搜索、获取 、适配、扩展 、实例化 、与软件其他部分的互连)
具有高复用性的软件应该具有以下特征: