代码复用

✍ dations ◷ 2025-06-09 06:00:24 #软件开发,计算机编程

代码复用,也被称作软件复用。就是再利用已有的代码,或者相关的知识去编写新的代码来构造软件。

可复用的代码以及相关的知识与需求文档,设计,测试用例一样都是软件开发的组织内部所不可或缺的资产。事实上,最早为人所知的复用正是从代码复用开始的。所谓的代码复用,本质上就是对曾经编写过的代码的一部分甚至全部重新加以利用,从而构建新的程序。使用这种方法就可以将程序员从费时费力的重复劳动中解放出来。

程序库是一种代码复用的很好的形式。程序员可以创建内部抽象以便程序的部分代码可被复用,或者直接创建一个自定义库给自己使用。用于衡量代码可复用程度的特性通常包括:模块化,低耦合,高内聚,数据封装以及SOC。

如果编写代码时要利用已有的代码,则必须定义某种接口或者通信的方法。这通常包含了对子程序,对象,类或原型的引用或调用。

对于以某个已有程序的旧版本作为出发点来进行新版本的开发的做法也可被视为一种代码复用。

还有一种做法也可被视为代码复用。即直接从已有程序中将一段代码拷贝出来并粘贴到另一个地方作为新程序的一部分。但是这种做法往往会使得程序员最终陷入重复代码过多的问题。

为了使代码复用更加方便,更加迅速并且更加体系化,相关的研究者也进行了大量的研究。面向对象程序设计就是以此为目的而派生出来的方法。更加新一点的方法就是代码自动生成,它会基于用户设置的一系列参数来自动生成程序的代码。与此类似的概念被称之为元编程。

软件复用是一种计算机软件工程方法和理论。60年代的“软件危机”使程序设计人员明白难于维护的软件成本是极其高昂的,当软件的规模不断扩大时,这种软件的综合成本可以说是没有人能负担的,并且即使投入了高昂的资金也难以得到可靠的产品,而软件重用的思想是解决这一问题的根本方法。

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

编写程序库是进行代码复用最常见的方法。很多共通的操作,比如文件的读/写,操作系统信息的获取的动作都会被封装在程序库中,然后由软件开发人员来调用。使用程序库的一大优点就是它所提供的操作都是经过充分测试的,但是缺点则是无法对程序库提供的操作的具体实现进行调整,同时程序库也要求软件开发人员花大量时间去学习它的用法。

设计模式对于同类的相似问题提供了通用的解决方法。它所提供的是概念上的解决方法,对于具体问题往往还需要具体实现一份代码。利用抽象类或接口往往可以在特定的设计模式中达到代码的复用。

软件开发人员往往可以通过第三方的应用程序或者框架来实现对一个程序的大范围复用,这可以有效地提高生产效率。但缺点在于第三方的应用程序或者框架往往只在某个特定的应用范围内才可以适用。

相关

  • 褐藻褐藻(学名:Phaeophyceae)是属较高等的多细胞藻类,属真核细胞生物,有1,500种左右,主要分布于大陆附近的水域,则淡水种罕见。褐藻纲外表从暗褐色的橄榄绿都有,其取决于褐藻素与叶绿素
  • 三价铁离子三价铁离子(Fe3+)是一种常见的铁的离子,主要存在于铁盐及其溶液中,如氯化铁。Fe3+具有较强的氧化性(EΘ=+0.77V)。虽然常见的含三价铁离子的氯化铁溶液呈棕黄色,但这并不是Fe3+自
  • 尼基塔·米亥科夫金狮奖1992年 《蒙古精神》戛纳影展评审团大奖1994年 《烈日灼身》尼基塔·谢尔盖耶维奇·米亥科夫(俄语:Никита Сергеевич Михалков,转写:Nikita Serge
  • 占领东欧的广大领土东进(德语:Drang nach Osten),是十九世纪德国大日耳曼主义创造的一个术语,变成了德国的民族主义的座右铭。他们以条顿骑士团向东扩张为例子,认为德国应向东欧扩大生存空间。这个观
  • 2021年冬季世界大学生运动会第三十届冬季世界大学生运动会(英语:XXX Winter Universiade)将于2021年1月21日至31日在瑞士琉森举行。2014年9月1日,FISU推出了2021年度世界大学生运动会的申办。2015年2月在20
  • 3.1415 (任家萱专辑)《3.1415》 ,是台湾著名女歌手、女子演唱团体S.H.E成员Selina任家萱的首张个人国语大碟,2015年1月9日发行。制作班底包括林夕、林俊杰、萧煌奇、姚若龙、黄韵玲、武雄、阿弟仔
  • 厚木海军飞行场厚木海军飞行场(日语:厚木海軍飛行場/あつぎかいぐんひこうじょう ,IATA代码:NJA;ICAO代码:RJTA),是一座位于日本神奈川县的军用机场,用地横跨大和市及绫濑市,目前为美国海军和日本海
  • 刘义庆刘义庆(403年-444年2月26日),彭城郡彭城县(今江苏省徐州市)人,刘宋宗室,武帝刘裕之侄,为著名文学家、政治家。本长沙王刘道邻之子,过继给刘裕另一弟弟刘道规,世袭临川王。曾集士人门客
  • 糯米团 (乐团)糯米团(Sticky Rice)是一个成立于1994年的台湾摇滚放克乐团,原始成员有吉他手兼主唱马念先、贝斯手余光燿、吉他手沈其翰、鼓手洪峙立(2002年退出)。糯米团在2004年的野台开唱之
  • 眼镜蛇瓶子草眼镜蛇瓶子草(学名:),又称为加州瓶子草(California Pitcher plant)、眼镜蛇百合(Cobra Lily)、眼镜蛇植物(Cobra Plant),为瓶子草科眼镜蛇瓶子草属食虫植物。眼镜蛇瓶子草属为单种属,仅