web-dev-qa-db-ja.com

C ++用のUMLフリーリバースエンジニアリングツール(.h / .cpp ==>クラス図)

UMLを作成するために利用できるツールClass .h-または.cpp-filesのセットからダイアグラムを作成できますか?

私は何かを探しています...

  • is free
  • Windowsですぐに実行されます
  • 特定のIDEを必要としません
  • 理想的にはGUIを提供します
16
Ben

Dia は非常に優れたオープンソースの描画ツールであり、 cpp2dia は.h/.cppファイルからUML図を作成します。

Linuxで使用していますが、他のプラットフォームで実行できるかどうかはわかりません。

Cpp2diaのGUIはありませんが、コマンドラインの使い方は非常に簡単です。

8
pnezis

Boumlについて

それは私のコードでエラーを発見したと主張しています

逆は「真の」C++のみを受け入れ、プリプロセッサステップがないため、クラス定義または操作定義でマクロを使用するとエラーが発生します。

カスタムデータ型のデータメンバーを属性として直接表示しません

逆は可能な限り関係を生み出し、型が既知のクラスでもクラスでもない場合(たとえば、 'int')に属性が使用されます。

複数の個別の逆を行わず、1つの逆を実行して、予約するいくつかの最上位ディレクトリを指定します(指定された各ディレクトリは再帰的に走査されます)

BrunoPagès(Boumlの作者)

5
Bruno Pagès

私は Doxygraph と呼ばれるツールを開発しました。これは、Doxygenによって生成されたXMLを解析し、それをインタラクティブなUMLクラス図に変換して、Webブラウザーで表示したり、Graphvizを読み取ることができるソフトウェアにインポートしたりできます。ドット」ファイル。

3
Oktalist

私はこれを試していませんが、Umbrelloは実行可能な候補のようです: http://uml.sourceforge.net/ これはKDEライブラリの上に構築されていますLinux/Windows/Macで動作するはずです。

3
Roman Kutlak

あなたは試すことができます ArgoUML これは無料で、素敵なGUIがあり、Javaで書かれているため、どのシステムでも簡単に実行できます。

UMLダイアグラムからC++を生成できます。ただし、C++ソースコードのリバースエンジニアリングは、現時点では サブプロジェクト によって処理されます。このツールの最新のスナップショットは ソースリポジトリ からダウンロードできます。ただし、このツールはまだ開発中のため、期待どおりに機能しない可能性があります。

2
jopasserat

C++のインクリメンタルリバースエンジニアリングを提供するStarUMLのモジュールを実装しました。 stdコンテナーもサポートします。まだ開発中ですが、試してみてください。 http://starumlcmodule.sourceforge.net

1
acampesino