您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦

文章目录

UML的介绍

UML (Unified Modeling Language)是一种通用的可视化的建模语言,可以用来描述、可视化、构造和文档化软件密集型系统的各种工件。它不是一种程序设计语言。
UML 是独立于过程的,它可以在软件生命周期的各个阶段运用,不过主要应用于软件开发的设计与分析阶段。

模型

什么是模型呢?模型就是对现实的简化。比如:我们在设计一款新汽车时首先需要设计该汽车的模型,只有模型设计好之后才会开始汽车的生产开发。

建模的作用

  1. 模型有助于按照实际情况或按照所需要的样式对系统进行可视化。
  2. 支持独立于编程语言和开发过程的规范。
  3. 模型给出了指导构造系统的模板。
  4. 模型对做出的决策进行文档化。

UML的组成

【UML建模】(1) UML建模的初了解,概述,组成,作用_uml


UML由构造块,规则和公共机制这三部分组成。

  1. 构造块:UML组成中构造块是对模型中最具有代表性的成分的抽象
  2. 规则:UML有一套规则,这些规则描述了一个结构良好的模型看起来应该像什么
  3. 公共机制: UML中有4种贯穿整个语言且一致应用的公共机制,因此使得UML变得较为简单。

构造块

【UML建模】(1) UML建模的初了解,概述,组成,作用_uml_02


构造块由事物,关系,模型图三个部分组成。

  1. 事物:UML模型中最基本的组成元素,可以把事物理解成汉语中的单词和词语
  2. 关系:关系是把事物紧密联系在一起,可以把关系理解成汉语中的语法
  3. 模型图:模型图是事物和关系的可视化展示,可以把模型图理解成汉语中的文章。

构造块之事物

【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_03


事物分为结构事物,行为事物,分组事物,注解事物四种。

结构事物:指的是模型中的静态部分,用于呈现概念或者实体的表现元素。

行为事物:指模型里随着时空不断变化的部分。

分组事物:可以把分组事物看成一个"盒子",模型可以在其中被分解。

注解事物:UML模型的解释部分

下面就分别对这几种事物进行介绍

结构事物

结构事物下有类,用例,接口,协作,活动类,组件,节点

  1. 类:类是指具有相同属性、方法、关系和语义的对象的集合;
  2. 【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_04

  3. 用例:定义了执行者(在系统外部和系统交互的人)和被考虑的系统之间的交互来实现的一个业务目标;
  4. 【UML建模】(1) UML建模的初了解,概述,组成,作用_统一建模_05

  5. 接口:定义行为规范,描述了类或组件对外可见的动作;
  6. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_06

  7. 协作:合作完成某个特定任务的一组类及其关联的集合
  8. 【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_07

  9. 活动类:活动类的对象有一个或多个进程或线程。活动类和类很相象
  10. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_08

  11. 组件:组件是物理的、可替换的部分,包含接口的集合
  12. 【UML建模】(1) UML建模的初了解,概述,组成,作用_用例_09

  13. 节点:系统在运行时存在的物理元素,代表一个可计算的资源
  14. 【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_10

行为事物

行为事物分为交互,状态机两种

交互:由一组对象之间在特定上下文中,为达到特定的目的而进行的一系列消息交换而组成的动作;交互就是指时序图中的消息。

【UML建模】(1) UML建模的初了解,概述,组成,作用_uml_11


状态机:状态机由一系列对象的状态组成。

【UML建模】(1) UML建模的初了解,概述,组成,作用_统一建模_12

分组事物

分组事物只有一个就是包

包:结构事物、动作事物甚至分组事物都有可能放在一个包中

【UML建模】(1) UML建模的初了解,概述,组成,作用_用例_13

构造块之四种基本关系

在UML中的关系有四种基本关系,分别是

  1. 泛化关系:就是继承关系,子类和父类的关系,比如鸟与动物的关系就是泛化关系,实线的三角箭头从子类指向父类。
  2. 【UML建模】(1) UML建模的初了解,概述,组成,作用_uml_14

  3. 实现关系:实现关系是实现类与接口之间的关系,比如大雁实现了飞翔的功能。他是虚线的三角箭头从实现类指向接口。如下图所示:
  4. 【UML建模】(1) UML建模的初了解,概述,组成,作用_用例_15

  5. 关联关系:一组对象之间连接的结构关系,如下图老师,学生与课程之间的关系。
  6. 【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_16

  7. 老师和学生之间是双向关联关系,老师有多个学生,学生也可能有多名老师。但是学生与某个课程间的关系是单向关联关系,一个学生可能要上多门课程,但是课程是个抽象的东西它不拥有学生。
  8. 依赖关系:一个类的实现必须依赖于其他类的协助,比如人依赖空气。
    这四种关系的强弱顺序是:泛化=实现>关联>依赖

构造块之模型图

UML模型图图表共有十三种,本文将对其中比较常用的图表进行详细介绍。首先让我们来看看这些图表的介绍以及作用。

【UML建模】(1) UML建模的初了解,概述,组成,作用_统一建模_17

UML建模的图表按照种类可以分为结构型图表和行为型图表。

结构型图表:从不同的抽象和实现程度上描述了一个系统和系统构建的静态结构,并且描述他们是如何直接关联到一起的。

【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_18


该类型的图表包括:

  1. 类图(Class Diagram),
  2. 【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_19

  3. 对象图(Object Diagram),
  4. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_20

  5. 包图(Package Diagram),
  6. 【UML建模】(1) UML建模的初了解,概述,组成,作用_用例_21

  7. 组件图(Component Diagram),
  8. 【UML建模】(1) UML建模的初了解,概述,组成,作用_统一建模_22

  9. 部署图(Deployment Diagram),
  10. 【UML建模】(1) UML建模的初了解,概述,组成,作用_开发语言_23

  11. 复合结构图(Composite Structure)
  12. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_24

  13. 行为型图表:展示系统中的对象的动态行为,它描述了一个系统中的对象如何随时间变化而变化。
  14. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_25

  15. 该类型的图表包括:
  16. 用例图(Use Case Diagram),
  17. 【UML建模】(1) UML建模的初了解,概述,组成,作用_用例_26

  18. 活动图(Activity Diagrams),
  19. 【UML建模】(1) UML建模的初了解,概述,组成,作用_用例_27

  20. 状态图(State Machine Diagram),
  21. 【UML建模】(1) UML建模的初了解,概述,组成,作用_uml_28

  22. 时序图(Sequence Diagram),
  23. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_29

  24. 通信图(Communication Diagram)
  25. 【UML建模】(1) UML建模的初了解,概述,组成,作用_用例_30

  26. 交互概览图(Interaction Overview Diagram):
  27. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_31

  28. 定时图(Timing Diagram):
  29. 【UML建模】(1) UML建模的初了解,概述,组成,作用_uml_32

规则

【UML建模】(1) UML建模的初了解,概述,组成,作用_统一建模_33

  1. 命名:为事物、关系和图起名。
  2. 范围:给一个名称以特定含义的语境
  3. 可见性:怎样让其他人使用或者看见名称
  4. 完整性:事物如何正确、一致地相互联系
  5. 执行:运行或模拟动态模型的含义是什么

公共机制

【UML建模】(1) UML建模的初了解,概述,组成,作用_统一建模_34


公共机制分为:规则说明,修饰,通用划分,扩展机制

规则说明

  1. 规格说明提供了对构造块的语法和语义的文字描述
  2. 规格说明用来描述系统的细节
  3. UML的规格说明提供了一个语义底版,它包含了一个系统的各个模型的所有部分,并且各部分相互联系,并保持一致。
    总而言之,规格说明就是UML图的产品说明书

修饰

修饰:UML表示法中的每个元素都有一个基本符号,可以把各种修饰细节加到这个符号上。

【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_35

通用划分

  1. 类/对象二分法(class/object dichotomy): 类是一个抽象,对象是这个抽象的一个具体表现形式,UML的每一个构造块几乎都存在像类/对象这样的二分法。例如:用例和用例实例(场景),构件和构件实例,节点和节点实例等。
  2. 接口/实现二分法(interface/realization dichotomy)接口声明了一个契约,而实现则表示了对该契约的具体实施,它负责如实地实现接口的完整语义。几乎每一个UML的构造块都有像接口/实现这样的二分法。例如:用例和实现它们的协作,操作和实现他们的方法。如下图所示:
  3. 【UML建模】(1) UML建模的初了解,概述,组成,作用_规格说明_36

扩展机制

对UML图示符号的扩展。包含:构造型Stereotype-标注值Taggedvalue-约束Constraint。如下图所示:

【UML建模】(1) UML建模的初了解,概述,组成,作用_uml_37

UML的应用范围

【UML建模】(1) UML建模的初了解,概述,组成,作用_统一建模_38


如上图展示了UML在软件生命周期中的应用范围。

  1. 在需求分析阶段可以通过用例图来描述系统的使用者,以及系统有哪些功能
  2. 在分析与设计阶段经常需要使用到类图、包图、组件图几种静态视图,以及所有动态视图。静态视图用来描述系统的设计类,动态视图用来确定任一时刻某一对象或者实体需要执行的操作,或者应该处于的状态。
  3. 在开发阶段根据UML图表来编写代码,
  4. 在测试阶段根据UML图表来设计测试用例,使用活动图来辅助测试
  5. 在部署阶段根据部署图来部署项目。

参考

​UML官网​

粉丝专属福利

软考资料:​​实用软考资料​

面试题:​​5G 的Java面试题​

学习资料:​​50G的各类学习资料​

并发编程:回复【并发编程】