系统架构设计师笔记第20期:软件架构复用

116 阅读2分钟

软件架构复用是指在不改变软件功能的情况下,将已有的软件架构直接或进行微调后复用到新的软件或系统中,从而加快软件开发进程,提高软件生产效率。软件架构复用包括软件产品复用和软件过程复用两部分的内容。其中,软件产品复用是指将已有的软件组件(如函数、模块、组件等)直接或进行适应性修改后复用到新的软件或系统中;软件过程复用是指将已有的软件生产过程中的各种劳动成果(如设计文档、测试案例、源代码等)直接或进行适应性修改后复用到新的软件或系统中。

软件架构复用的分类

软件架构复用可以分为以下几种类型:

  1. 代码级复用:通过编写大量的公共类和公共函数等,供开发人员直接使用。
  2. 组件级复用:将功能的组件化封装,对外提供一组或多组的API接口。
  3. 模块级复用:在开发的项目或产品中,如果发现大量重复的功能模块,可以在这些模块设计时注重扩展性,使其能应用到其他类似功能的项目中。
  4. 构架级复用:构架级在设计概念上最为高级的一种。它相当于一个平台或者思想,在这个平台上,可以开发出根据此平台思想稳定而又高效的软件产品。

软件架构复用的实现方式主要包括以下几种:

  1. 白盒复用:源代码可见,可修改和扩展。
  2. 黑盒复用:源代码不可见,不能修改。
  3. 模块层次的复用(接口/类):包括继承和委托等。

这些实现方式可以帮助开发者更好地进行软件架构复用,提高软件生产效率。

软件架构复用的原因

软件架构复用的原因主要有以下几点:

  1. 审美上和智力上的考虑:软件开发者渴望不朽,通过创造出可复用的组件