软考(系统架构师)-软件架构设计之构件
考题分析构件部分题目主要集中在基础知识部分是比较重要的部分论文曾经也出现过构件概念构件又称为组件是一个自包容、可复用的程序集它具有规范的接口规约和显式的语境依赖。构件中的接口是一个已命名的一组操作的集合构件和对象的区别对象一个实例单元具有唯一的标志可能具有状态此状态外部可见封装了自己的状态和行为构件是独立部署单元可作为第三方的组装单元没有外部的可见状态构件系统架构中细分概念构件一组通常需要同时部署的原子构件。构件和原子构件之间的区别在于大多数原子构件永远都不会被单独部署尽管它们可以被单独部署原子构件一个原子构件是一个模块和一组资源。大多数原子构件都属于一个构件家族一次部署往往涉及整个家族模块一组类和可能的非面向对象的结构体比如过程或者函数资源一个类型化的项的固定集合可以包含代码资源构件分类独立而成熟的构件该类构件得到了实际运行环境的多次检验隐藏了所有接口用户只需用规定好的命令进行使用有限制的构件提供了接口指出了使用的条件和前提适应性构件进行了包装或使用了接口技术对不兼容、资源冲突等进行了处理可以直接使用装配的构件在安装时已经被装配在操作系统等使用“胶水代码”就可以进行连接可修改的构件可以进行版本替换实现构件的替换构件复用构件的复用步骤检索和提取构件、理解和评价构件、修改构件、组装构件检索与提取构件方法基于关键字特点是树形或有向无回路结构刻面Facet检索法利用Facet描述构件执行的功能、被操作的数据、构件应用的语境或任意其他特性超文本检索法基于全文检索技术使得检索者在阅读文档过程中可以按照人类的联想思维方式任意跳转到包含相关概念或构件的文档构件组装构件组装过程的层次构件组装过程的三个层次包括定制、集成、扩展定制Customization构件组装过程的第一个层次主要关注根据特定需求对构件进行个性化的调整和修改集成Integration构件组装过程的第二个层次主要关注将多个定制好的构件组合成一个完整的软件系统扩展Extension构件组装的第三个层次主要关注在现有软件系统的基础上增加新的功能或构件构件组装的方式构件组装包含三个方式顺序组装、层次组装、叠加组装顺序组装通过按顺序调用已经存在的构件可以用两个已经存在的构件来创造一个新的构件层次组装发生在一个构件直接调用由另一个构件所提供的服务时被调用构件的“提供”接口必须和调用构件的“请求”接口兼容否则就需要编写“胶水代码”实现转换叠加组装发生在两个或两个以上构件放在一起来创建一个新构件的时候。新构件合并了原构件的功能对外提供了新的接口构件组装的技术构件组装的技术包括基于功能的构件组装技术、基于数据的构件组装技术和面向对象的构件组装技术构件组装接口不兼容构件组装时经常会面临接口不兼容的问题一般有三种包括参数不兼容、操作不兼容、操作不完备参数不兼容接口每一侧的操作有相同的名字但参数类型或参数个数不相同操作不兼容提供接口和请求接口的操作名不同操作不完备一个构件的提供接口是另一个构件请求接口的一个子集或者相反针对上述不兼容情况必须通过编写适配器构件来解决不兼容的问题构件失配构件失配是由于待复用构件对最终系统的体系结构和环境的假设与实际情况不同而导致的冲突。包括由构件引起的失配、由连接子引起的失配、由于系统成分对全局体系结构的假设存在引起的失配由构件引起的失配由于系统对构件基础设施、构件控制模型和构件数据模型的假设存在冲突引起由连接子引起的失配由于系统对构件交互协议、连接子数据模型的假设存在冲突引起构件标准构件标准包括三类COBRA、J2EE、DNA 2000COBRACORBA核心组件和技术特性包括接口定义语言IDL、对象请求代理ORB、互操作协议GIOP/IIOP和动态调用和序列化接口定义语言IDL包括六种元素模块定义、类型定义、常量定义、异常、接口描述和值类型。接口描述是一个IDL文件最核心的内容模块定义将被映射为Java语言中的包和C语言中的命名空间伺服对象ServantCORBA对象的真正实现负责完成客户端请求对象请求代码ORBObject Request Broker是分布对象系统中的软总线解释调用并负责查找实现该请求的对象将参数传递给找到的对象并调用方法返回结果。客户方不需要了解服务对象的位置、通信方式、实现、激活或存储机制对象适配器Object Adapter用于屏蔽ORB内核的实现细节为服务器对象的实现者提供抽象接口以便它们使用ORB内部的某些功能J2EEJ2EE包括三种Bean会话Bean、实体Bean和消息驱动Bean会话Bean实现业务逻辑负责完成服务端和客户端的交互实体Bean: 描述了存储数据库表中的一行稳定持久的数据实现O/R映射简化数据库开发工作消息Bean: 处理并发和异常访问题目演练2022年11月在构件的定义中是一个已命名的一组操作的集合A 接口 B 对象 C 函数 D 模块

相关新闻

LSTM长短期记忆神经网络用于时间序列预测模型:单维输入输出MATLAB代码(2019版及以上)

LSTM长短期记忆神经网络用于时间序列预测模型:单维输入输出MATLAB代码(2019版及以上)

LSTM长短期记忆神经网络做时间序列预测模型 数据是单维输入单维输出,可自行替换数据和其他参数,操作简单,标价即为实际价格,联系直接发邮箱 代码内有详细的注释,替换数据即可直接使用,可以用来做交通流量&a…

2026/5/17 10:23:42 阅读更多 →
【squid系列003篇】基于192.168.90.215/216/217的Squid反向代理+Web虚拟主机完整部署手册-本次部署和测试小结

【squid系列003篇】基于192.168.90.215/216/217的Squid反向代理+Web虚拟主机完整部署手册-本次部署和测试小结

文章目录一、本次架构中 Squid 与 Web 的关系二、Squid 的三种核心工作模式1. 正向代理(Forward Proxy)2. 反向代理(Reverse Proxy)3. 透明代理(Transparent Proxy)三、本次架构中 Squid 是否等同于 CDN&am…

2026/5/17 10:23:40 阅读更多 →
Mybatis-Plus条件构造器和常用接口

Mybatis-Plus条件构造器和常用接口

1. wapper介绍Wrapper : 条件构造抽象类,最顶端父类AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件QueryWrapper : 查询条件封装UpdateWrapper : Update 条件封装AbstractLambdaWrapper &…

2026/7/4 16:49:25 阅读更多 →

最新新闻

Beyond Compare 5永久激活终极指南:开源密钥生成器完整使用教程

Beyond Compare 5永久激活终极指南:开源密钥生成器完整使用教程

Beyond Compare 5永久激活终极指南:开源密钥生成器完整使用教程 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen 还在为Beyond Compare 5的30天试用期而烦恼吗?当你正专注…

2026/7/5 6:15:50 阅读更多 →
告别AI画图翻车!零一AI设计智能体,依托GPT-Image-2重构视觉生产力

告别AI画图翻车!零一AI设计智能体,依托GPT-Image-2重构视觉生产力

做设计、做运营、做内容的人,大概率都踩过AI生图的坑:提示词写满百字,成品构图错乱;图片内嵌文字乱码、笔画残缺;改图反复返工,AI看不懂修改逻辑;生成画面氛围感够了,却没法落地商用…

2026/7/5 6:13:49 阅读更多 →
从 RAG 到 Agent学习笔记

从 RAG 到 Agent学习笔记

大模型(LLM)的能力正在逐渐趋同,真正的技术壁垒正在向 Harness Engineering(驾驭工程)转移。本文将结合近期技术探讨,系统梳理大模型应用开发中的核心工程化技术,涵盖 RAG 结构化输出、约束解码…

2026/7/5 6:11:49 阅读更多 →
文旅伴手礼场景,白酒包装定制如何融合地方特色元素

文旅伴手礼场景,白酒包装定制如何融合地方特色元素

文旅伴手礼视角下的白酒包装定制策略在文旅产业与地方酒文化深度融合的背景下,白酒包装定制已不再局限于简单的瓶身印刷,而是演变为承载地域文化、提升伴手礼附加值的关键载体。对于景区管理机构、地方酒企及文创开发团队而言,如何将地方特色…

2026/7/5 6:09:48 阅读更多 →
如何轻松管理Minecraft游戏体验:PCL启动器完整指南

如何轻松管理Minecraft游戏体验:PCL启动器完整指南

如何轻松管理Minecraft游戏体验:PCL启动器完整指南 【免费下载链接】PCL Minecraft 启动器 Plain Craft Launcher(PCL)。 项目地址: https://gitcode.com/gh_mirrors/pc/PCL 如果你是一位Minecraft玩家,是否曾为复杂的游戏…

2026/7/5 6:07:48 阅读更多 →
WPS-Zotero插件:5分钟搞定跨平台文献引用,科研写作效率翻倍

WPS-Zotero插件:5分钟搞定跨平台文献引用,科研写作效率翻倍

WPS-Zotero插件:5分钟搞定跨平台文献引用,科研写作效率翻倍 【免费下载链接】WPS-Zotero An add-on for WPS Writer to integrate with Zotero. 项目地址: https://gitcode.com/gh_mirrors/wp/WPS-Zotero 还在为Windows和Linux之间切换文献管理软…

2026/7/5 6:05:48 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻