2021年9月22日水曜日

Python でコードから UML (クラス図) を生成する方法

Python でコードから UML (クラス図) を生成する方法

概要

pyreverse コマンドは pylint モジュールに取り込まれているのでそちらを使うのがポイントです

環境

  • macOS 11.5.2
  • Python 3.8.3
  • pyreverse in pylint 2.10.2

インストール

pylint とインストールすると pyreverse もインストールされます

  • pipenv install pylint

テストコード

class User:

    def __init__(self, name, age):
       self.name = name
       self.age = age

    def show(self):
        print("{} => {}".format(self.name, self.age))

class SuperUser(User):

    def __init__(self, name, age):
        super().__init__(name, age)
        self.admin = True

    def show(self):
        super().show()
        print(self.admin)


u1 = User("hawk", 10)
u1.show()
admin = SuperUser("snowlog", 20)
admin.show()

動作確認

  • pipenv run pyreverse -o png test.py
  • open classes.png

最後に

pyreverse 単体ではほぼメンテされてませんが pylint 側に取り込まれているようなので pylint を使える環境であればそちらの pyreverse を使いましょう

0 件のコメント:

コメントを投稿