UML类图符号理论

0. 前言

相信你们在学习UML类图的时候,最大的困难可能来自两个方面:学习

  • 类图中各类关系的区别;
  • 多种关系的符号记忆容易混淆;

本着"Do one thing and do it well."的原则,本文不介绍UML类图中各类关系的区别。而重在介绍UML类图的符号理论,以及利用该理论帮助你们更好的记忆。.net

1. 准备

在开始阅读本文以前,你须要了解的知识有:code

  • UML类图的概念;
  • UML类图有几种关系;
  • 各类关系的强弱;

2. UML类图符号理论基础

UML类图主要有如下几种关系:htm

  • 泛化 Generalization
  • 实现 Realization
  • 组合 Composition
  • 聚合 Aggregation
  • 关联 Association
  • 依赖 Dependency

以上这六种关系的强弱是:blog

泛化 > 实现 > 组合 > 聚合 > 关联 > 依赖

这六种关系,每一种都对应着一个符号。加起来就有六种符号,要想在较短的时间内记住这六种符号并且不产生混淆是一件不太容易的事情。那么该如何更有效的来记忆这些符号?排序

接下来咱们将首先认识一下关于符号的基础知识。图片

2.1 类图符号基础知识

首先咱们从总体上来认识一下表达类图关系的符号,类图关系的符号由三部分组成:箭头、线条和箭尾。ci

输入图片说明

  • 箭头形状有两种,分别为箭头和三角箭头。

输入图片说明

  • 线条形状有两种,分别为实线和虚线。

输入图片说明

  • 箭尾形状有三种,分别为点、空心菱形和实心菱形。

输入图片说明

综上,咱们能够得知表达类图关系的符号一共有2 x 2 x 3 = 12种,可是UML类图中只有6种关系,因此还剩下6种关系未被使用。get

在了解类图关系的符号表达以后,咱们来看一下符号的优先级关系。it

2.2 符号优先级

从关系符号的组成来看,咱们定义如下优先级关系:

箭头 > 箭尾 > 线条
  • 对于箭头:
三角箭头 > 箭头
  • 对于箭尾:
实心菱形 > 空心菱形 > 点
  • 对于线条:
实线 > 虚线

因此,从上述优先级咱们不可贵出:

三角箭头+实线 > 三角箭头+虚线 > 箭头+实心菱形 > 箭头+空心菱形 > 箭头+实线 > 箭头+虚线

上面的六种符号就是UML类图中定义的六种关系符号表达。

3. 应用

咱们能够利用上述符号理论,轻松记忆UML的类图关系符号。具体的记忆方法以下:

  • 了解各类关系的强弱排序;
  • 了解符号的优先级关系;

类图关系符号一共有6个,咱们分红3组,每组2个来记忆。

首先来记忆箭头:

  • 三角箭头 + 实线
  • 三角箭头 + 虚线

这两种分表表示泛化和实现。

接下来记忆箭尾:

  • 实心菱形 + 实线
  • 实心菱形 + 虚线 分别表示组合和聚合。

最后咱们来记忆线条:

  • 箭头 + 实线
  • 箭头 + 虚线 分别表示关联和依赖。

有了这样的分组和符号优先级关系,咱们就能很轻松的记忆UML类图关系,今后再也不混淆,并且印象深入。

4. 总结

本文主要介绍了UML类图符号的基础知识,并利用该基础知识帮助你们更好的记忆UML类图关系符号。

从UML类图符号基础知识,咱们分析得出一共有12种符号,可是UML类图关系只使用了6种,剩下的其余6种以下:

  • 三角箭头 + 实心菱形 + 实线

  • 三角箭头 + 实心菱形 + 虚线

  • 三角箭头 + 空心菱形 + 实线

  • 三角箭头 + 空心菱形 + 虚线

  • 箭头 + 实心菱形 + 虚线

  • 箭头 + 空心菱形 + 虚线

若是从此UML须要定义新的类图关系,则能够参考上述符号理论,使用上述6种符号。

5. 相关资料

相关文章
相关标签/搜索