LoginSignup
0
1

PlantUMLを使ってみた。

Posted at

はじめに

PlantUMLはテキストベースでUML図を記述できるオープンソース。VSCodeの拡張機能もある。ツールの準備から、簡単な使い方まで、備忘録としてまとめる。
参考にしたサイト。

目次

ツールのインストール

VSCodeの拡張機能でPlantUMLを使用するには下記3点のインストールが必要。

① Java

PlantUMLはJavaで駆動する。OracleのJavaは商用ライセンスの制約もあるので、今回は、MicrosoftのOpenJDKをインストールする。

② Graphviz

描画のために使うツール。ライセンスは Eclipse Public License。

③ VSCodeのPlantUML拡張

VSCodeをインストールし、拡張機能のPlantUMLをインストールする。

image.png

戻る

Markdownでも表示できるようにする

VSCodeの拡張機能のMarkdown Preview Enhancedを入れるとMarkdownの文中にPlantUMLを組み込むことができる。下記3点を実施する。

① plantuml.jarを入手する。

下記よりダウンロードする。ライセンス形態を選べるので都合のよいやつを選ぶ。BSDかMITかな?

② Markdown Preview Enhancedをインストールする。

image.png

③ Markdown Preview Enhancedのパスに設定する。

VSCodeの [ファイル]->[ユーザ設定]->[設定][設定の検索]markdown-preview-enhanced.plantumlJarPathと設定し、①でダウンロードしたjarファイルのパスを指定する。

戻る

使えるPlantUMLの種類

下記が対応している。

  • シーケンス図
  • ユースケース図
  • クラス図
  • オブジェクト図
  • アクティビティ図
  • コンポーネント図
  • 状態図
  • タイミング図
👈PlantUML記述例
'-----------------------
@startuml
title シーケンス図
A -> B : 要求
B -> A : 応答
@enduml
'-----------------------
@startuml
title ユースケース図
:ユーザ: --> (U)
"開始する" as (U)
@enduml
'-----------------------
@startuml
title クラス図
クラスA <|-- クラスB
@enduml
'-----------------------
@startuml
title オブジェクト図
object オブジェクト1
object オブジェクト2
オブジェクト1 <|--オブジェクト2
@enduml
'-----------------------
@startuml
title アクティビティ図
start
:処理①;
:処理②;
stop
@enduml
'-----------------------
@startuml
title コンポーネント図
[コンポーネントA] as Comp
@enduml
'-----------------------
@startuml
title 状態図
[*] --> 状態1	
状態1 --> [*]
状態1 -> 状態2
状態2 --> [*]
@enduml
'-----------------------
@startuml
title タイミング図
@startuml
robust "タイミング" as A
concise "ユーザ" as B
@0
A is アイドル
B is アイドル
@100
A is 処理中
B is 処理中
@200
A is 処理中
@enduml

戻る

リンクや注釈の記述

  • リンク
    [[リンク 表示文字列]]
  • 注釈
    note right : 表示文字列 note left : 表示文字列
@startuml
title PlantUML [[https://plantuml.com/ja/ リンクはこちら]]
A -> B : 要求
note right : 右側にコメント
B -> A : 応答
note left : 右側にコメント
@enduml

戻る

以上

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1