作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。
热门文章推荐:
- (1)《为什么很多人工作 3 年 却只有 1 年经验?》
- (2)《一文掌握大模型提示词技巧:从战略到战术巧》
- (3)《AI 时代,程序员的出路在何方?》
- (4)《如何写出高质量的文章:从战略到战术》
- (5)《我的技术学习方法论》
- (6)《我的性能方法论》
- (7)《AI 时代的学习方式: 和文档对话》
一、AI 解读
UML(统一建模语言)是一种用于软件系统分析和设计的标准语言,它通过提供标准化的图形表示方法来帮助软件开发者定义、可视化、构建和文档化软件系统的各个部分。UML图形大体上可以分为三大类:结构图、行为图和交互图。每一类图又包括了几种特定的图形,用于展示系统的不同方面。
结构图
类型 | 描述 |
---|---|
类图 | 展示了系统中类的结构及其相互关系,如继承、关联等。 |
对象图 | 类图的一个实例,展示了系统运行时对象之间的关系。 |
包图 | 描述了系统的分包结构,显示了包之间的依赖关系。 |
组件图 | 展示了软件组件的组织和依赖关系。 |
部署图 | 描述了物理层面的组件部署情况,如服务器、数据库等。 |
复合结构图 | 描述了类或组件的内部结构,包括它的部分和端口等。 |
信息流图 | (较少使用)描述了信息流动的方式,展示了系统中信息的流动和处理过程。 |
行为图
类型 | 描述 |
---|---|
用例图 | 描述了系统的功能以及外部用户(参与者)与这些功能的交互关系。 |
活动图 | 展示了业务流程或操作的工作流,描述了从开始到结束的活动序列。 |
状态图 | 展示了系统或对象的状态变化过程,反映了事件对对象状态的影响。 |
交互图
类型 | 描述 |
---|---|
时序图 | 展示了对象之间交互的时间序列,强调消息交互的顺序。 |
通信图 | 类似于时序图,但强调对象之间的关系和消息交换,而不是时间顺序。 |
交互概览图 | 是活动图的特殊形式,展示了系统中的交互操作。 |
定时图 | (较少使用)专注于时间约束,展示了对象状态和交互的时间表示。 |
通过这些图形,UML提供了一套全面的视图来表示软件系统的不同方面,包括它的结构、行为以及对象之间的交互方式。接下来,我会根据这些概念出几道选择题。
二、AI 出题
-
UML中用于描述系统静态结构的图是哪一种?
A. 用例图
B. 类图
C. 活动图
D. 时序图 -
下列关于UML的描述中,错误的是?
A. 对象图是类图的一个实例,展示了对象之间的关系
B. 组件图用于展示软件组件的组织和依赖关系
C. 用例图用于展示系统的部署情况
D. 状态图展示了对象的状态变化过程 -
在UML中,展示业务流程或操作工作流的图是?
A. 状态图
B. 活动图
C. 通信图
D. 部署图 -
描述物理层面组件部署情况的UML图是?
A. 部署图
B. 组件图
C. 包图
D. 复合结构图 -
以下哪种UML图不属于交互图?
A. 时序图
B. 通信图
C. 类图
D. 交互概览图 -
在UML中,用于描述信息流动的方式,展示系统中信息的流动和处理过程的图是?
A. 信息流图
B. 活动图
C. 状态图
D. 用例图
答案及解析
-
答案:B. 类图
类图是UML中描述系统静态结构的主要图形,展示了类的结构及其之间的各种静态关系。 -
答案:C. 用例图用于展示系统的部署情况
用例图实际上是用于描述系统的功能以及外部用户(参与者)与这些功能的交互关系,而不是部署情况。描述部署情况的是部署图。 -
答案:B. 活动图
活动图用于展示业务流程或操作的工作流,描述了活动的序列,从开始到结束。 -
答案:A. 部署图
部署图用于描述物理层面的组件部署情况,如服务器、数据库等的部署。 -
答案:C. 类图
类图属于结构图的一种,而非交互图。交互图主要包括时序图、通信图和交互概览图。 -
答案:A. 信息流图
信息流图用于描述信息流动的方式,展示了系统中信息的流动和处理过程,虽然在实际应用中使用较少,但它属于UML的一种图形。
三、真题
拓展阅读:
https://www.w3cschool.cn/uml_tutorial/uml_tutorial-jnf328y2.html