GolangでCode to Graph(UML)できないか調べる
#uml #モデリング #golang
どの段階でどんなUMLが出せるかを確認しながら進めたい。
UMLを出せるパッケージを探す
下記のシナリオからちょっとずつ開発してどんなUMLが出るのかを確認する
投資自動化のために鞘取りシステムをつくる#5ef0af4ed0a7040000151e9e
goumlのセットアップ
Goが入っているという前提で、まずはgo getしてくる。
code:goget.bat
go get -u github.com/kazukousen/gouml/cmd/gouml
go: downloading github.com/kazukousen/gouml v0.0.0-20200217144925-c881f0b0c32d
go: found github.com/kazukousen/gouml/cmd/gouml in github.com/kazukousen/gouml v0.0.0-20200217144925-c881f0b0c32d
go: downloading github.com/go-kit/kit v0.9.0
go: downloading github.com/urfave/cli v1.20.0
go: downloading github.com/go-logfmt/logfmt v0.4.0
go: downloading github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515
go: github.com/go-logfmt/logfmt upgrade => v0.5.0
go: github.com/urfave/cli upgrade => v1.22.4
go: github.com/go-kit/kit upgrade => v0.10.0
go: downloading github.com/urfave/cli v1.22.4
go: downloading github.com/go-kit/kit v0.10.0
go: downloading github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d
go: downloading github.com/russross/blackfriday/v2 v2.0.1
go: downloading github.com/shurcooL/sanitized_anchor_name v1.0.0
go: downloading github.com/go-logfmt/logfmt v0.5.0
go: github.com/cpuguy83/go-md2man/v2 upgrade => v2.0.0
go: downloading github.com/cpuguy83/go-md2man/v2 v2.0.0
あとは実行するだけ。
gouml init -o _docs/uml.puml
とりあえず構造体をいくつか作ってUMLを出してみる
https://gyazo.com/482a3efc0b897b9d65937b635561f87b
データの関連図はつくれないかー。
要素をいっぱい追加してみてみる
https://gyazo.com/1a2b5554330e31e52d1372348cd55780
まだエンティティだしただけやのになかなかきっついな。
なんとかしてエンティティ間のリレーションシップを出せないか模索する。
おわりに
repositoryとかserviceとか追加して色々つないだけど、クラス図にはなってもそれ以上にはならない。
開発しながら認識の統一のために使うにはちょっと厳しい印象。
#2020/06/21週
更新履歴
#2020/06/24 書き始め