软考 系统架构设计师系列知识点之软件构件(1)

所属章节:

第2章. 计算机系统基础知识

第3节. 计算机软件

2.3.7 软件构件

1. 概述

构件又称为组件 ,是一个自包容 、可复用 的程序集 。构建是一个程序集、或者说是一组程序的集合。这个集合可能会以各种方式体现 出来,如源程序或二进制代码。这个集合整体向外提供统一的访问接口 ,构件外部只能通过接口来访问,而不能直接操作构建的内部 。构件的两个最重要的特性 是自包容 与可重用。

2. 软件构件的组装模型

随着软件构件技术的发展,人们开始尝试利用软件构件进行搭积木式 的开发,即构件组装模型 。在构件组装模型中,当经过需求分析定义出软件功能后,将对构件的组装结构进行设计,将系统划分成一组构件的集合,明确构件之间的关系。在确定了系统构件后,则将独立完成每一个构件,这时既可以开发软件构件,也可以重用已有的构件 ,当然也可以购买或选用第三方的构件 。构件是独立的 、自包容的 ,因此架构的开发也是独立的,构件之间通过接口相互协作。

构件组装模型的一般开发过程分为以下4步:

(1)设计构件组装;

(2)建立构件库;

(3)构建应用软件;

(4)测试与发布。

构件组装模型 的优点如下:

(1)构件的自包容性让系统的扩展变得更加容易;

(2)设计良好的构件更容易被重用,降低软件开发成本;

(3)构件的粒度较整个系统更小,因此安排开发任务更加灵活,可以将开发团队分成若干组,并行地独立开发构件。

构件组装模型也有明显的缺点:

(1)对构件的设计需要经验丰富的架构设计师,设计不良的构件难以实现构件的优点,降低构件组装模型的重用度;

(2)在考虑软件的重用度时,往往会对其它方面做出让步,如性能等;

(3)使用构件组装应用程序时,要求程序员能熟练地续航我构件,增加了研发人员的学习成本;

(4)第三方构件库的质量会最终影响到软件的质量,而第三方构件库的质量往往 是开发团队难以控制的。

相关推荐
无心水11 小时前
8、系统架构设计基础知识 核心考点与学习笔记
笔记·学习·系统架构·架构师·软考·软考架构师·软考高级架构师
墨子夕11 小时前
软件架构设计(第二篇)
架构·系统架构
吴建旭 智宅焕1 天前
智能家居交付商品化的系统架构设计与实现:从附属服务到标准化交付商品
系统架构·智能家居
诚心呈意共享外卖配送系统1 天前
即时零售配送系统怎么选?一份可落地的技术选型评估清单
架构·系统架构·创业创新·零售
深圳安锐科技有限公司1 天前
从成像尺度到亚像素解算:变焦视觉位移监测如何让远近断面都稳
图像处理·人工智能·深度学习·算法·计算机视觉·系统架构·结构健康监测
微订校园外卖平台1 天前
搭建本地外卖平台避坑:校园外卖系统架构、验收与交付清单
系统架构·外卖系统·本地生活·微订
微三云生态系统架构师-彭丹1 天前
GEO品牌负面舆情监测?多AI问答采集与自动澄清架构
系统架构·大模型应用·舆情监测·geo系统·geo代运营服务·ai引用率·品牌防护
荆棘鸟智能1 天前
扬尘在线监测数据接入与异常清洗:从断点补传到质量审计
人工智能·算法·系统架构
qq_401700411 天前
Qt Modbus 源码剖析:从 QModbusClient 到工业级通信框架
开发语言·qt·系统架构
Jmyd01231 天前
博物馆文物建模设备系统架构设计:固定式与手持式协同采集方案
系统架构·智慧文博