Plantuml之類圖語法介紹(十六)

簡介: CSDN博客專家,專注Android/Linux系統,分享多mic語音方案、音視頻、編解碼等技術,與大家一起成長!

優質專欄:Audio工程師進階系列原創干貨持續更新中……】🚀
優質專欄:多媒體系統工程師系列原創干貨持續更新中……】🚀

人生格言: 人生從來沒有捷徑,只有行動才是治療恐懼和懶惰的唯一良藥.

更多原創,歡迎關注:Android系統攻城獅

歡迎關注Android系統攻城獅

1.前言

本篇目的:Plantuml之類圖語法介紹

2.PlantUML介紹

  • PlantUML是一種開放源碼的建模語言與工具,它可以幫助用戶輕松地創建各種類型的UML圖表,如時序圖、用例圖、類圖、活動圖等。該軟件基于文本描述,用戶可以使用簡單的文本語法來描述圖表的結構和關系,而無需手動繪制圖形。這種基于文本的建模方法使得用戶能夠更專注于設計本身,而不是圖形繪制的細節。

  • PlantUML支持多種輸出格式,包括PNG、SVG、PDF等,同時也支持集成到各種文檔中,如Markdown、HTML、Word等。這使得用戶能夠輕松地將生成的圖表嵌入到不同類型的文檔或網頁中,從而方便地與團隊成員或客戶分享和溝通設計想法。

  • 除了UML圖表外,PlantUML還支持其他類型的圖表,如流程圖、網絡圖、組織結構圖等,使得它成為一個多功能的建模工具。用戶可以利用PlantUML的豐富語法和功能來快速創建各種圖表,從而提高工作效率和溝通效果。

  • PlantUML的開源特性使得用戶可以自由地使用和定制該工具,同時也能夠參與社區的貢獻和交流。該軟件擁有活躍的開發和用戶社區,用戶可以從中獲取支持、分享經驗,并參與軟件的改進和發展。

  • PlantUML是一個強大而靈活的建模工具,它通過簡單的文本描述和豐富的功能特性,幫助用戶更輕松地創建、分享和交流各種類型的圖表設計,從而提升團隊協作和設計效率。

2.PlantUML類圖語法

  • 類圖的設計語法與編程語言的傳統語法相似。這種相似性為開發人員提供了一個熟悉的環境,從而使創建圖表的過程更簡單、更直觀。
    這種設計方法不僅簡潔,而且還能創建既簡潔又富有表現力的表述。此外,它還允許通過與序列圖相呼應的語法來描繪類之間的關系,為流暢而深刻地描繪類之間的交互鋪平了道路。
  • 除了結構和關系表示法,類圖語法還支持進一步的豐富,如包含注釋和應用顏色,使用戶能夠創建信息豐富且視覺上吸引人的圖表。

<1>.元素聲明

在這里插入圖片描述

<2>.類之間的關系

在這里插入圖片描述

<3>.關系上的標簽

在這里插入圖片描述

<4>.在元素名稱和關系標簽中使用非字母

在這里插入圖片描述

<5>.添加方法

在這里插入圖片描述

<6>.定義能見度(可訪問性)

在這里插入圖片描述

<7>.抽象與靜態

在這里插入圖片描述

<8>.高級類體

在這里插入圖片描述

<9>.備注和版型

在這里插入圖片描述

<10>.備注中的更多功能

在這里插入圖片描述

<11>.注釋屬性 (field, attribute, member) 或方法

在這里插入圖片描述

<12>.鏈接的注釋

在這里插入圖片描述

<13>.抽象類和接口

在這里插入圖片描述

<14>.隱藏屬性、函數等

在這里插入圖片描述

<15>.隱藏類

在這里插入圖片描述

<16>.刪除類

在這里插入圖片描述

<17>.隱藏或刪除未關聯的類

在這里插入圖片描述

<18>.泛型(generics)

在這里插入圖片描述

<19>.指定標記(Spot)

在這里插入圖片描述

<20>.改變箭頭方向

在這里插入圖片描述

3.PlantUML示例

@startumlclass snd_card {int numberchar id[16];char driver[16];struct module *module;+start()#run()~stop()-test()
}
snd_card *-left- test1 : 包含  
snd_card *-right- test2 : 包含 
snd_card *-up- test3 : 包含 
snd_card *-down- test4 : 包含 class test1 #f0f030{int number+start()
}class test2 #00f030{int number+start()
}class test3 #f000f0{int number+start()
}class test4 #f8f0f9{int number+start()
}class A  #palegreen {int number+start()
}class B #ff0000 {int number+start()
}class C  #lightblue {int number+start()
}class D  #lightblue {int number+start()
}class E  #lightblue {int number+start()
}A *-left- B 
A *-right- C
A *-up- D
A *-down- E@enduml

對應plantuml繪制圖
在這里插入圖片描述

ref

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/210894.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/210894.shtml
英文地址,請注明出處:http://en.pswp.cn/news/210894.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

STM32基于USB串口通信應用開發

?作者簡介&#xff1a;熱愛科研的嵌入式開發者&#xff0c;修心和技術同步精進&#xff0c; 代碼獲取、問題探討及文章轉載可私信。 ? 愿你的生命中有夠多的云翳,來造就一個美麗的黃昏。 &#x1f34e;獲取更多嵌入式資料可點擊鏈接進群領取&#xff0c;謝謝支持&#xff01;…

人工智能:走向智能化未來的探索

前言 人工智能&#xff08;Artificial Intelligence&#xff0c;簡稱AI&#xff09;是當今科技領域最引人注目的發展方向之一。從虛構作品中的機器人到現實生活中的智能助手&#xff0c;AI正深刻地改變著我們的生活方式、工作方式以及與技術互動的方式。本文將深入探討人工智能…

對無向圖進行鄰接矩陣的轉化,并且利用DFS(深度優先)和BFS(廣度優先)算法進行遍歷輸出, 在鄰接矩陣存儲結構上,完成最小生成樹的操作。

一 實驗目的 1&#xff0e;掌握圖的相關概念。 2&#xff0e;掌握用鄰接矩陣和鄰接表的方法描述圖的存儲結構。 3&#xff0e;掌握圖的深度優先搜索和廣度優先搜索遍歷的方法及其計算機的實現。 4&#xff0e;理解最小生成樹的有關算法 二 實驗內容及要求 實驗內容&#…

模電·放大電路的分析方法——圖解法

放大電路的分析方法——圖解法 靜態工作點的分析電壓放大倍數的分析波形非線性失真的分析直流負載線與交流負載線圖解法的適用范圍 在實際測出放大管的輸入特性、輸出特性和已知放大電路中其它各元件參數的情況下&#xff0c;利用作圖的方法對放大電路進行分析即為圖解法。 靜…

postgresql自帶指令命令系列三

目錄 簡介 bin目錄 28.pg_verifybackup 29.pg_waldump 30.postgres 31.postmaster -> postgres 32.psql 33.reindexdb 34.vacuumdb 35.vacuumlo 總結&#xff1a; 簡介 在安裝postgresql數據庫的時候會需要設置一個關于postgresql數據庫的PATH變量 export PATH/…

笙默考試管理系統-MyExamTest----codemirror(51)

笙默考試管理系統-MyExamTest----codemirror&#xff08;51&#xff09; 目錄 笙默考試管理系統-MyExamTest----codemirror&#xff08;51&#xff09; 一、 笙默考試管理系統-MyExamTest----codemirror 二、 笙默考試管理系統-MyExamTest----codemirror 三、 笙默考試…

python模塊rsa,非對稱加密算法庫

一、簡介 RSA&#xff08;Rivest-Shamir-Adleman&#xff09;是一種非對稱加密算法&#xff0c;廣泛應用于數據加密和數字簽名等安全領域。以下是對RSA算法的介紹以及其優缺點&#xff1a; 1.密鑰生成&#xff1a;RSA算法生成一對密鑰&#xff0c;包括公鑰和私鑰。公鑰用于加密…

Linux CentOS 7.6安裝jdk1.8教程

安裝教程 第一種方式&#xff08;通過yum安裝&#xff09;&#xff1a;第一步&#xff1a;輸入查找命令&#xff1a;第二步&#xff1a;輸入安裝命令&#xff1a;第三步&#xff1a;安裝完成&#xff0c;輸入安裝命令后&#xff0c;等到出現Complete&#xff01;代表安裝完成第…

PyTorch實現邏輯回歸

最終效果 先看下最終效果&#xff1a; 這里用一條直線把二維平面上不同的點分開。 生成隨機數據 #創建訓練數據 x torch.rand(10,1)*10 #shape(10,1) y 2*x (5 torch.randn(10,1))#構建線性回歸參數 w torch.randn((1))#隨機初始化w&#xff0c;要用到自動梯度求導 b …

使用 ROS 和 Geomagic Haptic 驅動 Franka 機械臂

文章目錄 前言一、安裝 franka_ros二、安裝 OpenHaptics for Linux三、安裝 3D Systems Geomagic Touch ROS Driver四、安裝 franka_interactive_controllers五、使用 Geomagic Haptic 驅動 Franka 機械臂 前言 本文為在雙系統上使用 ROS 和 Geomagic Haptic 驅動 Franka 機械…

滑動窗口(單調隊列)

154. 滑動窗口 - AcWing題庫 給定一個大小為 n≤10^6≤10^6 的數組。 有一個大小為 k 的滑動窗口&#xff0c;它從數組的最左邊移動到最右邊。 你只能在窗口中看到 k 個數字。 每次滑動窗口向右移動一個位置。 以下是一個例子&#xff1a; 該數組為 [1 3 -1 -3 5 3 6 7]&…

HashMap的那些事

一、HashMap與HashTable的區別 1.來歷 HashTable是一種鍵值映射的數據結構&#xff0c;自從java發布就存在&#xff0c;而HashMap是jdk1.2后才出現的&#xff0c;雖然說HashTable出現得早且線程安全&#xff0c;但是效率很低已經棄用了&#xff0c;現在HashMap逐漸成為主流 …

Nmap腳本未來的發展趨勢

Nmap腳本技術的發展趨勢和前景 Nmap腳本是一種基于Lua語言開發的腳本&#xff0c;可以擴展Nmap的功能&#xff0c;用于自動化掃描、漏洞檢測、服務探測、設備管理等方面。隨著網絡安全的不斷發展和漏洞的不斷出現&#xff0c;Nmap腳本技術也在不斷發展和壯大。在本文中&#xf…

小米手機鎖屏時間設置為永不休眠_手機不息屏_保持亮屏

環境&#xff1a;打開手機自帶的鎖屏時間設置發現沒有 永不息屏的選項 原因&#xff1a;采用了三星OLED屏幕&#xff0c;所以根據OLED屏幕特性&#xff0c;這個是為了防止燒屏而特意設計的。非OLED機型支持設置“永不” 解決方案1&#xff1a;原生系統是支持永不鎖屏的&#…

Android 13 - Media框架(20)- ACodec(二)

這一節開始我們就來學習 ACodec 的實現 1、創建 ACodec ACodec 是在 MediaCodec 中創建的&#xff0c;這里先貼出創建部分的代碼&#xff1a; mCodec mGetCodecBase(name, owner);if (mCodec NULL) {ALOGE("Getting codec base with name %s (owner%s) failed", n…

ES 如何將國際標準時間格式進行格式化與調整時區

需求&#xff0c;日志收集的時候&#xff0c;時間格式是國際標準時間格式。形如yyyy-MM-ddTHH:mm:ss.SSS。 &#xff08;2023-12-05T02:45:50.282Z&#xff09;這個時區也不對&#xff0c;那如何將此類型的時間&#xff0c;進行格式化呢&#xff1f; 本篇文章體統一個案例&…

Other -- ChatGPT 原理

本文為個人理解&#xff0c;幫助小白&#xff08;本人就是&#xff09;了解正在創建新時代的 AI 產品&#xff0c;如文中理解有誤歡迎留言。 [參考鏈接--](https://baijiahao.baidu.com/s?id1765556782543603120&wfrspider&forpc) 1. 了解一些基本概念 大語言模型&a…

修改 Ganglia 監控 Grid Report timezone 時區 為 東八區 +8 PRC

Ganglia 監控 Grid Report timezone 默認時區 為 零時區 0 現在要修改為 東八區 8 具體操作如下 modify ganglia-web report timezone 0 --> 8 vim /apps/svr/httpd-2.4.48/htdocs/ganglia/header.php // add timezone GMT8 ini_set(date.timezone, PRC);詳細記錄&#x…

【面試】測試/測開(ING)

63. APP端特有的測試 參考&#xff1a;APP專項測試、APP應用測試 crash和anr的區別 1&#xff09;網絡測試 2&#xff09;中斷測試 3&#xff09;安裝、卸載測試 4&#xff09;兼容測試 5&#xff09;性能測試&#xff08;耗電量、流量、內存、服務器端&#xff09; 6&#xf…

畫對比折線圖【Python】

出這一期想必是我做某個課程作業遇到了。 由于去各個官網下載對比圖要錢&#xff0c;我還是不想花錢的&#xff01;真討厭&#xff01;淺淺水一期。 以下是要做的對比圖的數據&#xff1a; 代碼&#xff1a; from matplotlib import pyplot as plt#設置中文顯示plt.rcParams[…