软件复用

软件复用SoftWare Reuse

1.概念

软件复用是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费。软件复用是提高软件生产力和质量的一种重要技术。——百度百科
通俗的讲,所谓复用,(对建立软件目标系统而言)就是利用某些早先开发的对建立新软件系统有用的软件元素来生产新系统。即软件复用是指在构造新的软件系统的过程中,对已存在的软件产品(设计结构、源代码、文档等)重复使用的技术。

  1. 软件复用是一项活动,是一种手段,是一种技术,它不是一个对象。
  2. 复用的目的是想放弃那种原始的、一切从头开始的软件开发方式,利用复用,由共用的可复用构件来组装新的系统。
  3. 可用于复用的软件元素:高质量的软件工作成果(如代码、设计、体系结构、接口、测试)和文档、工具、过程、经过编译的知识(如指导原则、模型、公式)等。

主要思想
将软件看成是由不同功能部分的“组件”所组成的有机体,每一个组件在设计编写时可以被设计成完成同类工作的通用工具,这样,如果完成各种工作的组件被建立起来以后,编写一特定软件的工作就变成了将各种不同组件组织连接起来的简单问题,这对于软件产品的最终质量和维护工作都有本质性的改变。

2.复用的好处

1.降低软件开发和维护的成本
2.提高软件开发效率
3.提高软件的质量

3.复用的分类

  1. 代码的复用
    代码复用是软件复用中最为常见的一种形式,包括目标代码和源代码的复用。目标代码的复用可以通过编程语言的运行支持环境所提供的连接等功能实现。在编程时有时会把一些代码段复制到程序中,这就是源代码的复用,但这样做往往会产生一些新旧代码不匹配的错误。
  2. 设计的复用
    设计的复用受实现环境的影响较少(原因:设计结果比源程序的抽象级别更高),因此可复用构件被复用的机会更多,并且所需修改更少。设计复用有3种途径:1)是从现有系统的设计结果中提取一些可复用的设计构件,并把这些构件应用于新系统的设计中;2)是把一个现有系统的全部设计文档在新的软硬件平台上重新实现,也就是把一个设计运用于多个具体的实现;3)是独立于任何具体的应用,有计划地开发一些可复用的设计构件。
  3. 分析的复用
    可复用的分析构件是针对问题域的某些事物或某些问题的抽象程度更高的方法,受设计技术及实现条件的影响更小,所以可复用的机会更大。
  4. 测试信息的复用
    测试信息的复用主要包括测试用例的复用和测试过程的复用。

复用的层次
软件复用有三个层次:知识的复用、方法的复用和软件成分的复用。知识的复用、方法的复用属于知识工程的范畴,比较常见的是软件成分的复用。

类的复用

两种方式:
1.组合:在新的类中产生现有类的对象,就是把一个类的实例作为另一个类的属性保存。
2.继承:按现有类的类型来创建新类,然后在其中添加新代码。继承复用的是接口。

使用软件复用技术可以减少软件开发过程中大量的重复性的工作,提高软件生产效率,降低开发的成本,缩短开发周期。在一定程度上,采用软件复用技术也可以提高软件质量。因为大多数的可复用的软件构件都是在实际应用中通过检验的,并且经过严格的质量认证,复用这些构件有助于改善软件质量。此外,大量使用软件构件,还有助于提高软件的灵活性和标准化程度。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值