使用 Graphviz 绘画 UML 图
/ PR。本文的 PDF 版本可在 在此下 载。 Graphviz 是 AT&T 实验室开发的一个开源软件,它以一种文本语言去描述图(graph),然后 自动排布节点和边去生成图片。它已有近 30 年历史。 UML(unified modeling language,统一建模语言)是一种常用的面向对象设计的方法。其中 最常用的是类图(class diagram),用于表示类的构成以及类之间的关系。 的关系。 利用 Graphviz 去生成 UML 类图有几个好处: 1. 用文本表示图,容易更新,容易做版本管理。 2. 能自动排布节点位置,在大型复杂的图特别方便。 3. 统一文档风格。 实际上,文档生成工具Doxygen 也是采用 Graphviz 生成类图的。不过,我们在软件设计中, 经常以类图表示系统中某个部分,并且按需展示某些重点,而不是简单地全部列出,所以还是 需要手工去 需要手工去描述我们想要画什么,表示我们的软件设计。 1.1 使用 Graphviz dot 首先,下载 Graphviz 安装包。macOS 用户可以 brew install graphviz。 建立一个测试源文件 hello.dot(DOT 语言为 Graphviz 的图形描述语言): digraph { Hello -> World } 在命令行执行: 2 dot -Tpng hello0 码力 | 20 页 | 331.51 KB | 1 年前3统一建模语言 UML 参考手册 - 基本概念
��� 是一种直观化 明确化 构建和文档化软件系统产物的通用可视 化建模语言 ��� 由面向对象领域的三位大师 ������ ����� ���� �������� 和 ����� �������� 于 ���� 年发布 并提交给 ��� ��� 于 �� 月为 ��� 所采用 现已成为业界 标准 � 本文讲述了 ��� 基本概念 为 ��� 的深入理解提供一个起点 全文共分为十四个章节 � ��� ��� 概述对 ��� 语言 目标以及概念作了简略的介绍 � 第二章至第十章展示了 ��� 的各种视图 同时显示了各种结构如何配合工作 ��� 一 览中 以一个简单的例子开始 对 ��� 的视图 概念作了简单的介绍 然后 在后续的 章节中 静态视图 用例视图 状态机视图 活动视图 交互视图 物理视图 模型管理 视图 扩展机制 对各个视图进行详细的讨论 它们分别从静态建模机制 动态建模机制 模型管理机制以及扩展机制对 ��� 标准元素讨论了一些与核心概念的区别较小或者重要性不足以被包括至 ��� 核心 概念的元素 原文中仅有标准元素表 为了便于大家的理解 它们以 ��� 的相关核心元 素组织起来 并提供了对应核心元素的解释 � ��� 建 模 词 汇 表 引 自 ��� 规 范 原 文 中 未 有 相 关 内 容 英 语 原 文 可 参 见 ����������������的 ���������������������0 码力 | 123 页 | 2.61 MB | 1 年前3使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2023.11)
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2023.11) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 对象图 • 活动图 • 组件图 • 部署图 • 状态图 • 定时图 同时还支持以下非 UML 图: • JSON Data • YAML Data • Network diagram JLaTeXMath 符号的数学公式 • Entity Relationship diagram 通过简单直观的语言来定义这些示意图。 1 序列图 1 序列图 使用 PlantUML 创建序列图非常简单。这种易用性主要归功于其语法的用户友好性,既直观又易记。 • 直观的语法: 首先,用户非常欣赏 PlantUML 所采用的简单直观的语法。这种经过深思熟虑的设计意味着,即使是图 表创建新手也能轻松快速地掌握基础知识。 • 文本与图形的关联: 另一个显著特点是文本表示与图形输出之间非常相似。这种和谐的相关性可确保文本草稿准确地转化为 图形图表,从而提供连贯、可预测的设计体验,在最终输出中不会出现令人不快的意外。 • 高效的制作过程: 文本和图形结果之间的紧密联系不仅简化了制作过程,还大大加快了制作速度。用户可从更简化的流程 中获益,减少耗时的修改和调整要求。 • 起草时的可视化: 在起草文本的同时就能设想0 码力 | 539 页 | 7.74 MB | 1 年前3使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.9)
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.9) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice authentication Request Alice <-- Bob: another authentication Response @enduml 1.2 声明参与者 关键字 participant 用于改变参与者的先后顺序。 你也可以使用其它关键字来声明参与者: • actor • boundary • control • entity • database @startuml actor Foo10 码力 | 174 页 | 2.00 MB | 1 年前3使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.6)
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.6) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice authentication Request Alice <-- Bob: another authentication Response @enduml 1.2 声明参与者 关键字 participant 用于改变参与者的先后顺序。 你也可以使用其它关键字来声明参与者: • actor • boundary • control • entity • database @startuml actor Foo10 码力 | 174 页 | 1.98 MB | 1 年前3使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.1)
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.1) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice authentication Request Alice <-- Bob: another authentication Response @enduml 1.2 声明参与者 关键字 participant 用于改变参与者的先后顺序。 你也可以使用其它关键字来声明参与者: • actor • boundary • control • entity • database @startuml actor Foo10 码力 | 146 页 | 1.91 MB | 1 年前3PlantUML 1.2019.3 语言参考指引
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.3) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice authentication Request Alice <-- Bob: another authentication Response @enduml 1.2 声明参与者 关键字 participant 用于改变参与者的先后顺序。 你也可以使用其它关键字来声明参与者: • actor • boundary • control • entity • database @startuml actor Foo10 码力 | 157 页 | 1.78 MB | 1 年前3PlantUML 1.2019.2 语言参考指引
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.2) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice authentication Request Alice <-- Bob: another authentication Response @enduml 1.2 声明参与者 关键字 participant 用于改变参与者的先后顺序。 你也可以使用其它关键字来声明参与者: • actor • boundary • control • entity • database @startuml actor Foo10 码力 | 157 页 | 1.78 MB | 1 年前3使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.4)
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2019.4) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml Alice authentication Request Alice <-- Bob: another authentication Response @enduml 1.2 声明参与者 关键字 participant 用于改变参与者的先后顺序。 你也可以使用其它关键字来声明参与者: • actor • boundary • control • entity • database @startuml actor Foo10 码力 | 165 页 | 1.89 MB | 1 年前3PlantUML 1.2020.22 语言参考指引
使用 PlantUML 绘制的 UML PlantUML 语言参考指引 (Version 1.2020.22) PlantUML 是一个开源项目,支持快速绘制: • 时序图 • 用例图 • 类图 • 活动图 • 组件图 • 状态图 • 对象图 • 部署图 • 定时图 同时还支持以下非 UML 图: • JSON Data • 线框图形界面 • 架构图 • 规范和描述语言 AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用 -> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml 用户 -> 下次访问头部携带token认证 认证中心 <- 缓存: key=token+ip获取token 其他服务 <- 认证中心: 存在且校验成功则跳转到用户请求的其他服务 其他服务 -> 用户: 信息 @enduml 1.2 声明参与者 关键字 participant 用于改变参与者的先后顺序。 你也可以使用其它关键字来声明参与者: • actor • boundary • control • entity0 码力 | 295 页 | 3.08 MB | 1 年前3
共 98 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10