web-dev-qa-db-ja.com

コードのアーキテクチャを視覚化する

毎週末、私は個人のプロジェクトでコーディングを行っていますが、それはやがて一定の複雑さに達し、入力を受け取るさまざまな関数のシーケンスがあり、いくつかのクラスオブジェクトに保存し、それを切り取り、処理し、最後にそれを出力します。
コーディングセッション間で大きな休憩をとるので、通常、コードの正確な構造を忘れます。したがって、バグが発生するたびに、入力データがコードをどのように流れるか、機能を提供するモジュールの内部がどのように編成されるかなどを再確認する必要があります。

これが私のソフトウェアの悪いコード構造によるものなのか、それとも単に固有の複雑性によるものなのかはわかりません。

ソースコードを与えられて、コードの「アーキテクチャ」、つまりクラスのメソッドと関数がすべて一緒に機能する方法を視覚的に示すツールはありますか?

理想的には、これは他の人がより速く書いたコードを理解するのにも役立ち、個々のコード部分がどのように相互作用するかを素早く把握できます。

(PythonでPycharmを使用してコーディングしています。それが役立つ場合)。)

15
l7ll7

プログラムアーキテクチャとその制御フローを包括的に視覚化するための完璧なツールはないのではないかと心配しています。それらを頭の中に入れて、ソフトウェアアーキテクチャをクリーンで、均一で、予測可能にする必要があります。ただし、役立つツールがいくつかあります。

Pycharmでは次のことができます。

  • view ソースコードの構造と階層

  • view クラスのUML図。

pycallgraph2Pythonモジュール もあり、Pythonアプリケーションのコールグラフ視覚化を作成できます。 (これは、廃止されたpycallgraphPythonモジュール のメンテナンスされたフォークです)

そして、Codimensionのコード可視化を持つIDEPythonがあります 機能

10
SergeyLebedev