PHPでUMLを自動生成してくれるツールーphUML

アプリケーション

PHP

概要

クラス設計の外観を把握したい時にUMLを自動生成してくれるツールが欲しかった。
phpstormなら標準でいい感じにdiagramを生成してくれる機能があるらしいが、vscodeに入信してしまったのでいい感じのツールを探すしかない。

phUML

ぐぐると色々ツールはあるのだが、簡単に使えそうなやつを探してみた。

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のプラグインであったら嬉しいが今の所はなかった。

関連書籍