作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。
一、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