UML类图之PlantUML开发工具

Windows环境搭建

下载 Java

  • 下载安装JDK

下载Graphviz

  • 概念

    Graphviz 是开源的图形可视化软件,可以将文本语言转换成图表。

  • 作用

    PlantUML 用 Graphviz 来渲染输出 UML 模型。

  • 配置环境变量

    下载.msi文件安装成功后,配置环境变量:计算机→属性→高级系统设置→高级→环境变量→系统变量→path,在path中加入路径:安装目录\bin

  • 验证

    在windows命令行界面,输入dot -version,然后按回车,如果显示如下所示的graphviz相关版本信息,则安装配置成功

    
        dot - graphviz version 2.38.0 (20140413.2041)
    
    

下载 VSCoode

  • 安装plantuml插件

    Extensions->搜索plantuml

  • 测试使用

    
        @startuml
    
        login->PostMan:Hello
        
        PostMan->Bob:Hello   
            
        @enduml
    
    

    Alt+D快捷键 —— 自动生成图

    Alt+Shift+F —— 格式化代码格式

  • 支持格式
    不是支持的格式也可以生成Uml图但是不能设置格式与颜色

    支持UML格式

PlantUML

前言

	PlantUML 不仅可以嵌套到各种文本编辑器,IDE 工具,也提供在线版

概念

	PlantUML 是基于 Java 语言的开源 UML 图形绘制工具,是创建UML图形的组件,它通过简单直观的脚本来定义和创建 UML 图形。

其他

	eclipse中安装AmaterasUML插件,IDEA中安装plantUML插件

UML(Unified modeling language)

概念

  1. UML是一种用于软件系统分析和设计的语言工具,译为统一建模语言,用于帮助软件开发人员进行思考和记录的思路的结果

  2. UML本身是一套符号的规定,类似于数学符号和化学符号,用于描述软件模型中的各个元素和他们之间的关系,比如关联、实现、泛化、依赖、组合、聚合等

分类

  • 用例图

  • 静态结构图

    类图、对象图、包图、组件图、部署图

  • 动态行为图

    交互图(时序图与协作图)、状态图、活动图

6大关系

依赖(Dependency)

  • 概念

    是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖,在程序中一般表现为类A中的方法需要类B的实例作为其参数或者变量,而类A本身并不需要引用类B的实例作为其成员变量。

  • 表示方法

    虚线箭头,类A指向类B。

  • 例图

    依赖

泛化(Generalization)

  • 概念

    泛化是一种一般与特殊、一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其进行了扩展。在程序中是通过继承类实现的。

  • 表示方法

    空心三角形箭头的实线,子类指向父类

  • 例图

    比如狗是对动物的具体描述,在面向对象设计的时候一般把狗设计为动物的子类

泛化

实现(Realization)

  • 概念

    实现是一种类与接口的关系,表示类是接口所有特征和行为的实现,在程序中一般通过类实现接口来描述

  • 表示方法

    空心三角形箭头的虚线,实现类指向接口

  • 例图

    实现

关联(Association)

  • 概念

    表示类与类之间的联接,它使一个类知道另一个类的属性和方法,这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,在程序中被关联类B以类属性的形式出现在关联类A中,也可能是关联类A引用了一个类型为被关联类B的全局变量

    关联具有导航性:即双向关系或单向关系

  • 表示方法

    实线箭头,类A指向类B

  • 例图
    关联

聚合(Aggregation)

  • 概念

    聚合是关联关系的一种特例,是强的关联关系。聚合是整体和个体之间的关系,即has-a的关系,整体与个体可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享。程序中聚合和关联关系是一致的,通过set方法注入

  • 表示方法

    尾部为空心菱形的实线箭头(也可以没箭头),类A指向类B

  • 例图
    聚合

组合(Composite)

  • 概念
    组合也是关联关系的一种特例。组合是一种整体与部分的关系,即contains-a的关系,比聚合更强。部分与整体的生命周期一致,整体的生命周期结束也就意味着部分的生命周期结束,组合关系不能共享。程序中组合和关联关系是一致的,创建整体对象同时new出部分对象

  • 表示方法

    尾部为实心菱形的实现箭头(也可以没箭头),类A指向类B

  • 例图
    组合

  • 其他

    如果在程序中Person实体中定义了对IDCard进行级联删除,即删除Person时,连同IDCard一起删除,那么IDCard和Person就是组合关系

参考链接

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值