PlantUMLはオープンソースのUMLダイアグラム作成用のテキストベースの言語である。PlantUMLの言語はドメイン固有言語の一例である。ダイアグラムの表示にはGraphvizを使用している。
PlantUMLを使用するアプリケーション
PlantUML.com はクラウド上でダイアグラムを生成する。PlantUMLには、ほかにも様々な拡張機能がある。
Confluence にはPlantUMLのプラグインが存在する。このプラグインはページをリロードする間に即座にダイアグラムを描画する。Confluence Cloud向けに追加のPlantUML plug-inが存在する。 Doxygen は \startuml コマンド以降に書かれたソースのダイアグラムを統合する。 Eclipse にはPlantUML plug-inがある。 Google DocsはPlantUML GizmoというPlantUML.comを扱うアドオンがある。 IntelliJ IDEA はプラグインを用いることでダイアグラムの作成と表示ができる。 LaTeXはPGF/TikZパッケージでPlantUMLの部分的なサポートがされる。 MediaWikiはSVGあるいはPNGで描画するPlantUML plug-inがある。 LibreOfficeには、Libo_PlantUMLという拡張機能がある。これを利用するとWriter上で記述してダイアグラムが生成できる。 Microsoft Wordは PlantUML Gizmo という add-in を用いることでPlantUMLダイアグラムを使用できる。 NetBeansはPlantUML plug-inがある。
テキストとUMLの対応 PlantUMLは整形され、人間に読むことのできるコードをダイアグラムの描画に用いている。
PlantUMLは様々な形式のダイアグラムをサポートし、レイアウトを明確にする必要がない。もし必要があればダイアグラムの修正を行うことも可能である。
例 Facade パターンのUMLクラス図の例を以下に示す。 skinparam style strictuml class Façade { doSomething() } Façade .> package1.Class1 Façade .> package2.Class2 Façade .> package3.Class3 Client1 .> Façade : doSomething() Client2 .> Façade : doSomething() note as N2 doSomething() { Class1 c1 = newClass1(); Class2 c2 = newClass2(); Class3 c3 = newClass3(); c1.doStuff(c2) c3.setX(c1.getX()); return c3.getY(); } end note Façade .. N2
関連項目
AsciiDoc
Mermaid (ソフトウェア) 統一モデリング言語ツールのリスト
脚注