C# スクリプトから puml のクラス図 を自動生成する
すでに生成されているC#スクリプトからPlantUMLのクラス図を自動生成してみた.
事前準備(PlantUML)
PlantUML(.puml)を表示するために事前準備が必要. 自分はVScodeやEclipseで表示してます.
VSCodeでの表示の仕方は下記のqiitaが詳しいので参照.
PlantUmlCallDiagramGenerator
puml自動生成のために,こちらを利用した.
こちらのジェネレーターを利用するためにはまず,.NET Core SDK 2.1 以上が必要.
今だと Core 3.1 かな.下のサイトからDLする.
その後,cmdで適当なディレクトリで以下のように叩く.
dotnet tool install --global PlantUmlClassDiagramGenerator --version 1.2.0
するとジェネレーターがインストールされる.
使い方
cmdで以下のように叩く.
puml-gen InputPath [OutputPath] [-dir] [-public | -ignore IgnoreAccessibilities] [-excludePaths ExcludePathList] [-createAssociation]
InputPath : 入力するファイル/ディレクトリパス
OutputPath : 出力先ファイル/ディレクトリパス
-dir : パスがディレクトリなら記入する
-public : publicメンバだけ出力する
-ignore : 無視するメンバを書く.複数ある場合はカンマ区切りで書く.
-exclutivePath : 除外したいファイル/ディレクトリパス
-createAssociation : オブジェクト間の関連を、プロパティ、フィールドの参照から作るようにする
-allInOne : include.puml にファイルの参照ではなくファイルの中身をそのまま書き込まれるようになる
ディレクトリ単位で変換すると,すべての出力ファイルを参照した include.pumlをInputPath内に出力するようになってる.
CSharp to PlantUML
使い方はCtrl + Shift + P
かF1
でコマンドパレットを開いて, CShart to PlantUMLを選択したら,
plantumlというフォルダにpumlが生成されます.
こっちのほうがcmdでジェネレーターを叩くより出力が早い!
InputPath,OutputPathとかを設定したい場合は,ctrl + ,
で設定を開いて,
csharp2plantuml
で検索すると,拡張設定が出てくるので,好みに設定します.
PlantUMLの使い方
公式に使い方のPDFが載っている.日本語もある.
シーケンス図,ユースケース図,クラス図,コンポーネント図,ステートマシン図…など
最近だとガントチャートとかWBS図も描けるようになっててビビる.