プログラムで使用されているオブジェクトを視覚化するツールはありますか?

StackOverflow https://stackoverflow.com/questions/1824261

  •  22-07-2019
  •  | 
  •  

質問

これがどれほど役立つかはわかりませんが、プログラムで使用されているオブジェクトと、どのオブジェクトがどこから参照されているかを視覚化するのは適切だと思いました。 graphvizのようなプログラムで使用されるデータを生成すると推測しています。これを行うツールはありますか?そうでなければ、自分でこれを行うのはどれほど難しいでしょうか?理想的にはこれは任意のプログラムで機能しますが、必要に応じてコードにいくつかの変更を加えることができます(dumpObjects()呼び出しなどを追加するなど)

Javaでこれを行うことに興味がありますが、他の言語の解決策がある場合はそれらも投稿してください。

役に立ちましたか?

解決

プロファイラーを使用すると、実行時に作成されるオブジェクトを確認できます。これは、たとえばJProfilerの出力です:

 jprofiler heap walker
(source: ej-technologies.com

他のヒント

Sunは、メモリとプロセスのプロファイリングを含む VisualVM を開発しました。また、OSGiなどのテクノロジーのプラグインもサポートしています。

興味深い使用例は、メモリ分析と最適化です。これがまさに Eclipse MAT の目的です。確認してください。

代替テキストhttp://dev.eclipse.org /blogs/memoryanalyzer/files/2008/05/dom_tree.gif

グラフ構造の視覚化(オブジェクトグラフを含む)には、GraphVizに基づいた多くのツールがあります: http://www.graphviz.org/

クラスとオブジェクトを3Dで表示するオブジェクトグラフビジュアライザーがあります。現在のところ、初期化を自動化するAPIがありませんが、この機能を追加するのはそれほど難しくないはずです。 ソースコードも Github にあります。

編集:明らかにその方向で行われている作業があります: https://eprints.hsr.ch/491/

 OGV

それがあなたが目指しているものかどうかはわかりませんが、 doxygen はほとんどすべてを行います。

これは、コードのコンパイルのヒープを取り、相互参照されたhtml、pdfのrtfに変換します。 completedは、各関数のツリーを呼び出し、"によって参照されます"各変数について

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top