代码改变世界

plantuml教程

2023-11-10 22:54  youxin  阅读(119)  评论(0编辑  收藏  举报

 

在 VS Code 中安装 PlantUML 扩展,方法同安装其他扩展相同。打开 Extensions 面板,搜索 PlantUML,然后点击安装按钮进行安装。、

还可以安装一个语法高亮插件:Yog PlantUML Highligh 

 文件扩展名必须是.plantuml才可以高亮。md的不支持。

 

该插件需要安装依赖 Graphviz软件制图软件,需要从官网下载Download | Graphviz

不过我没有安装graphviz也可以使用。应该是新版的基础功能不需要依赖graphviz了。

  为了能看到及时的效果,在 Windows 版本的 VS Code 中,通过 Ctrl + Shift + P 打开命令面板,输入 PlantUML,找到 Preview Current Diagram 命令,或者通过 快捷键 Alt + D,打开预览页面。
 
 

plantuml官方网站:https://plantuml.com/zh/

 

类图

 https://plantuml.com/zh/class-diagram

类图的设计语法与编程语言的传统语法相似。这种相似性为开发人员提供了一个熟悉的环境,从而使创建图表的过程更简单、更直观。

这种设计方法不仅简洁,而且还能创建既简洁又富有表现力的表述。此外,它还允许通过与序列图相呼应的语法来描绘类之间的关系,为流畅而深刻地描绘类之间的交互铺平了道路。

除了结构和关系表示法,类图语法还支持进一步的丰富,如包含注释和应用颜色,使用户能够创建信息丰富且视觉上吸引人的图表。

 

您可以了解更多有关PlantUML 中一些常用命令的信息,以增强您的图表创建体验。 

 

 

@startuml
abstract        abstract
abstract class  "abstract class"
annotation      annotation
circle          circle
()              circle_short_form
class           class
class           class_stereo  <<stereotype>>
diamond         diamond
<>              diamond_short_form
entity          entity
enum            enum
exception       exception
interface       interface
metaclass       metaclass
protocol        protocol
stereotype      stereotype
struct          struct
@enduml

 

 

 

Uml 类图 stereotype 的值含义

Uml 类图 stereotype 的值含义
用 rose 画类图的时候,里面的 stereotype 选项的 entity 和 domain 有什么区别?

 

stereotype 其实就是给你类分类,entity,domain,service,这三种都是按层次划分的,分别表示不同层中的类。entity 是实体层的,domain 是业务领域层的,service 就是服务层的。

 

什么是Stereotype?
在UML中,Stereotype用于给模型元素添加额外的含义。换句话说,它是一种标签,用于更具体地描述一个元素的角色或职责。可以将其看作是一个元数据标签,它为元素提供了额外的“类型”信息

为什么需要Stereotype?
假设我们在设计一个电子商务系统,这个系统里有一个名为“User”的类。这个“User”类可能是一个普通用户,也可能是管理员。如果我们使用“Stereotype”,就可以更明确地标注出这个“User”类的具体角色。

使用Stereotype的优点:

语义明确:它能够清晰地表示类或者其他元素在系统中的角色。
更好的文档化:通过使用Stereotype,我们能够更好地了解每个模型元素的职责,从而更好地编写和维护文档。
易于扩展:当系统复杂度增加时,使用Stereotype会使得系统更容易扩展。
————————————————
版权声明:本文为CSDN博主「运维开发王义杰」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_14829643/article/details/133003317

类之间的关系

 

类之间的关系是用以下符号定义的。

 

关系类型 符号 绘图
泛化关系 <|--
组合关系 *--
聚合关系 o--

 

可以用.. 来代替-- ,会显示为虚线

 

 

包Package

你可以通过关键词 package 声明包,同时可选的来声明对应的背景色(通过使用html色彩代码或名称)。

 

注意:包可以被定义为嵌套。

 

命名空间Namespace

在使用包(package)时(区别于命名空间),类名是类的唯一标识。 也就意味着,在不同的包(package)中的类,不能使用相同的类名。

在那种情况下(译注:同名、不同全限定名类),你应该使用命名空间来取而代之。

 

你可以从其他命名空间,使用全限定名来引用类, 默认命名空间(译注:无名的命名空间)下的类,以一个“."开头(的类名)来引用(译注:示例中的BaseClass).

 

注意:你不用显示地创建命名空间:一个使用全限定名的类会自动被放置到对应的命名空间。