软考 - 系统架构设计师 - 软件重用

概念

        软件重用,也称为软件复用或软件再用,是利用事先已经建立好的软件产品,用于创建新软件系统的过程。  这个过程蕴含了两个主要的方面:一是系统地开发可重用的软件产品;二是系统地使用这些软件产品作为构筑模块,来建立新的系统。

        软件重用的好处包括提高软件生成率、缩短开发周期、降低软件开发和维护费用、生产更加标准化的软件,以及提高软件开发质量。

垂直式重用和水平式重用

        在软件重用的分类中,根据所应用的领域范围,可以将其划分为 垂直式重用 和 水平式重用。

垂直式重用

        垂直式重用主要关注在一类应用领域中重用软件构件。它的关键点在于领域分析,即根据应用领域的特征和相似性,预测软件构件的可重用性。

        这种重用方式特别适用于那些具有相似需求和功能的领域,通过重用已经开发好的软件构件,可以显著提高开发效率和质量。

总结

        垂直式重用是局限于某一领域的重用,如只在医疗系统中使用到的构件;

水平式重用

        与垂直式重用不同,水平式重用则关注在具有相似性的不同应用领域中重用软件构件,这种重用方式更强调跨系统的通用性和普遍性,适用于那些在不同系统中存在大量相似功能和需求的场景。

        通过水平式重用,可以在不同的应用系统中共享和复用相同的软件构件,从而减少重复开发的工作量,提高系统的可维护性和可扩展性。

总结

        水平式重用是指通用领域的重用,如标准函数库,任何软件都能用,所以是水平式重用

        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/778383.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3 渲染一个后端返回的图片字段渲染、table表格内放置图片

一、后端直接返回图片url 当图片字段接口直接返回的是图片url&#xff0c;可以直接放到img标签上 <img v-if"thumbLoader" class"r-image-loader-thumb" :src"resUrl" /> 二、当图片字段接口直接返回的是图片Id 那么就需要去拼一下图片…

中国地质大学教授用AI写论文?忘删GPT提示词引发学术界争论,AI到底是福还是祸?

中国地质大学一名教授在国外期刊公开发表的SCI论文&#xff0c;被发现有ChatGPT常见的提示词&#xff0c;引来使用AI代写论文的质疑。 这篇论文发表在英文国际学术期刊《Surfaces and interfaces》&#xff0c;影响因子在6.2以上&#xff0c;单篇发稿价格在2360美元&#xff0…

Gitlab CI---could not read username for xxx: no such device or address

0 Preface/Foreword 项目开发中&#xff0c;经常会使用第三方的算法或者功能&#xff0c;那么就需要把对应的repo以子模块的方式添加到当前repo中。 添加命令&#xff1a; git submodule add <URL> 1 问题表现 子模块添加成功&#xff0c;但是GitLab CI阶段&#xff…

QY-22 低功耗墒情监测站 无线 功耗低 远程实时查看

产品概述 低功耗墒情监测站基于传感、无线通信、处理与控制等物联网技术的开发&#xff0c;利用传感技术&#xff0c;通过传感器测量土壤墒情&#xff0c;并使用物联网进行传输。无需专门的通信线路&#xff0c;在联网的状态下&#xff0c;数据可快速、主动的上报到云平台&…

【C语言】内存函数(memcpy)的使用和模拟实现

目录 一、memcpy定义1.memcpy在**cplusplus**中的定义2.memcpy**复制内存块**3.参数a.目的地b.源c.数字 4.函数返回值5.函数头文件 二、memcpy的使用使用memcpy()函数完成拷贝整型数组数据 三、memcpy的模拟实现思路代码 一、memcpy定义 1.memcpy在cplusplus中的定义 链接: l…

C++经典面试题目(十)

1、请解释C中的this指针的作用。 this 指针是指向当前对象的指针&#xff0c;在类的成员函数中可以使用它来访问当前对象的成员变量和成员函数。在成员函数中&#xff0c;this 指针被隐式地传递给成员函数。 2、C中的类对象的生命周期是怎样的&#xff1f; 类对象的生命周期…

太赞了!微信好友恢复用这6招就能找回来(2024最新)

想象一下这样的情景&#xff1a;您突然意识到自己不小心把某个重要的微信好友删除了&#xff0c;或者您的微信好友列表突然出现了空白&#xff0c;这可能会让人感到困扰。 因为微信是我们日常生活中最常用的即时通讯工具之一&#xff0c;我们与家人、朋友和同事之间的沟通几乎…

让Android应用活起来: Retrofit 和 OkHttp的比较参考

目录 前言 OkHttp Retrofit 对比 前言 在构建现代 Android 应用时&#xff0c;处理网络请求是一个不可或缺的部分。其中Square 的两个开源库&#xff0c;Retrofit 和 OkHttp&#xff0c;GitHub Star数很多&#xff0c;被很多人选择。在我刚成为一个Android er 的时候&…

(71)第一个出现两次的字母(72)统计星号

文章目录 1. 每日一言2. 题目(71)第一个出现两次的字母3. 解题思路4. 代码5. 题目(72)统计星号6. 解题思路7. 代码8. 结语 1. 每日一言 一年中和一生中的秋天&#xff0c;时光很短暂&#xff0c;但是更加晴朗而缺少变化。 —叔本华- 2. 题目(71)第一个出现两次的字母 题目链接…

初识C++之命名空间(namespace)

初识C之入门 命名空间(namespace) 文章目录 初识C之入门 命名空间(namespace)1.为什么要有命名空间2. 命名空间 namespace使用方法3. 作用域限定符(::&#xff09;和 命名空间(namespace)4. 命名空间的定义5. 命名空间的嵌套6. 命名空间的使用7. 总结 1.为什么要有命名空间 在C…

Git命令上传本地项目至github

记录如何创建个人仓库并上传已有代码至github in MacOS环境 0. 首先下载git 方法很多 这里就不介绍了 1. Github Create a new repository 先在github上创建一个空仓库&#xff0c;用于一会儿链接项目文件&#xff0c;按照自己的需求设置name和是否private 2.push an exis…

N5230A安捷伦N5230A网络分析仪

181/2461/8938产品概述&#xff1a; Agilent N5230A 网络分析仪提供了速度和精度的卓越组合&#xff0c;用于测量多端口和平衡组件&#xff0c;例如高达 50 GHz 的滤波器、双工器和射频模块&#xff08;取决于选件&#xff09;。Agilent N5230A 分析仪的自动端口扩展功能可自动…

zabbix自定义监控进程、日志文件

zabbix自定义监控进程、日志文件 zabbix自定义监控进程 在客户端安装httpd服务 [rootnode1 ~]# yum -y install httpd [rootnode1 ~]# systemctl start httpd [rootnode1 ~]# ss -antl State Recv-Q Send-Q Local Address:Port Peer Address:Port Pr…

filebox在线文件管理工具V1.11.1.1查分吧修改自用版免费分享[PHP]

* 基于:https://down.chinaz.com/soft/35899.htm * 查分吧 修改自用版今日对外分享(自2016年1.10版本以来一直用他云开发:Web环境即时看效果) * 也可以用于本人很多txt/csv通用查询系统的在线管理后台管理数据 * 默认登陆账号filebox密码nidemima * 修改账号密码:21-22行;获取…

通过WSL在阿里云上部署Vue项目

参考&#xff1a; 阿里云上搭建网站-CSDN博客 云服务器重装 关闭当前运行实例 更换操作系统&#xff0c;还有其他的进入方式。 选择ubuntu系统&#xff08;和WSL使用相同的系统&#xff09;。 设置用户和密码。发送短信验证码。 新系统更新。秒速干净的新系统设置完成。 这…

es6 Class基本语法和继承

es6 Class基本语法 class的基本语法&#xff1a; ES6 的class只是一个语法糖&#xff0c;它的绝大部分功能&#xff0c;ES5 都可以做到&#xff0c;新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已 传统用构造函数生成实例 function Point(x, y) {th…

Golang基础-5

Go语言基础 介绍 基础 切片 切片声明 切片初始化 切片基础操作 多维切片 介绍 本文介绍Go语言中切片(slice)(切片声明、切片初始化、切片基础操作、多维切片)等相关知识。基础 切片 切片(slice)是对数组的一个连续片段的引用,切片是一个引用类型。切片是长度可变的数组,…

基于单片机锂电池电量检测数码管显示系统设计

**单片机设计介绍&#xff0c;基于单片机锂电池电量检测数码管显示系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机锂电池电量检测数码管显示系统设计的主要目标是实时、准确地检测锂电池的电量&#xff0c;并…

Java中变量a = 3中的3是存储在栈还是堆?

1、栈区&#xff08;stack&#xff09; 由编译器自动分配释放&#xff0c;存放函数的参数值&#xff0c;局部变量的值等。 2、堆区&#xff08;heap&#xff09; 是一个可动态申请的内存空间&#xff08;其记录空闲内存空间的链表由操作系统维护&#xff09;&#xff0c;在j…

状态模式实战运用

目录 前言 UML plantuml 类图 实战代码 Form State Client 前言 通常一个完整的业务流程中&#xff0c;会经历多个阶段&#xff0c;每个阶段即一个业务状态&#xff0c;不同状态下对应这不同的业务处理逻辑。 无脑堆砌 if else 做判断然后选择对应的业务处理其实也能…