クラス設計の外観を把握したい時にUMLを自動生成してくれるツールが欲しかった。
phpstormなら標準でいい感じにdiagramを生成してくれる機能があるらしいが、vscodeに入信してしまったのでいい感じのツールを探すしかない。
ぐぐると色々ツールはあるのだが、簡単に使えそうなやつを探してみた。
github.com - MontealegreLuisphuml
ドキュメント
本家?github.com - jakobwsthoff/phumlはメンテ終了しているようなのだが、探してみると上記のfork版のようなやつが見つかった。
スターは少なくてあまり使う人いないのかな・・?という印象だが、ちゃんと使えそうだったので触ってみた。
phpのバージョン対応は^7.1
。
自分は7.3環境で使ってみた。
$ wget https://montealegreluis.com/phuml/phuml.phar
$ wget https://montealegreluis.com/phuml/phuml.phar.pubkey
$ chmod +x phuml.phar
$ mv phuml.phar /usr/local/bin/phuml
$ mv phuml.phar.pubkey /usr/local/bin/phuml.pubkey
composerでインストールすることもできる。
composer require phuml/phuml
インストールできたら、
vendor/bin/phuml phuml:diagram -r -a -i -o -p dot path/to/classes example.png
こんな感じの怪しげなオプションをいっぱいつけるとクラス図を生成してくれる。
オプションはドキュメントで確認。
phUML - Generate a class diagram
出力したくないアクセサをオプションで指定したりできるぽい。
大きめの設計を把握したい時に概要把握のために重宝しそう。
vscodeのプラグインであったら嬉しいが今の所はなかった。
関連書籍