LoginSignup
3
2

More than 3 years have passed since last update.

[C#]リフレクションを使って基本クラスライブラリ(BCL)のクラス図を作ってみた

Last updated at Posted at 2020-07-26

ソースコードからクラス図を作るツールなどはあるが、アセンブリからリフレクションでPlantUMLのクラス図を作成するツールを作ってみた。
集約関係までやるとキリが無いので継承関係のみ。
個人的にはクラス図は重視していなくて、既にありそうだけど手習いで作成した。

ソースコード

実行例(ファイルがくそデカイsvgなので注意。)

image.png

感想

  • IDisposableIEquatable<T>のようなインターフェースの実装関係を含めると、とても見れたものではないのでステレオタイプとして表現した。
  • それでも利用頻度の低そうな名前空間は消した。
  • DelegateAttributeも消した。
  • PlantUMLは最新版を使え。1.2020.10で謎の例外が起きていたけど、1.2020.15ならOKだった。
  • GraphViz/dotは最新版を使え。安定版だと謎のエラーが起きた。
  • PlantUMLの名前空間レイアウトは謎。
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2