VS2010でプログラムの流れをグラフなどで見ることはできますか? そうでない場合 - コードを分析する最も効率的な方法は何ですか?(それを理解するために!)
2 に答える
Visual Studio には、ツリーのような表示でどの関数がどの関数を呼び出しているかを確認できるツールが常にあります。私はそれを15年ほど使用していません。マウスクリックなどの詳細を調べるためだけに、この遅い接続でVS 2010をダウンロードするつもりはありませんが、周りを見回してください. ただし、私がこの機能を使用していない理由は、主にその価値が非常に限られているためです。
また、一般に、コードを理解するためのツールのサポートは非常に限られています。これは、理解は知性に基づいており、単純なルールやツールが実行できるものでは一般に捉えることができないためです。
もしそうなら、プログラマーは職を失うでしょう!
コードを理解するための最初のステップは、どのような種類の抽象化が最も重要であるかについてある程度の印象を得ることです。たとえば、コードの大部分がオブジェクト指向であり、状態に重点が置かれているのに、制御フローに重点が置かれている場合、それを理解するのはおそらく非常に困難です。それに対応して、あなたの焦点が状態にあり、コードが主に手続き型である場合、やはり理解しにくいでしょう。
最高のツールは紙とペンだと思います。
制御フロー グラフを描画し、データ フローを描画し、関連図を作成し、クラス ボックスを描画し、オブジェクト階層を描画します。
そして、使用した紙片を固いボールに砕いて、くずかごに投げ込むことを躊躇しないでください。:-)
また、一般的に、それについて他の人と話したり(良い洞察や疑問が得られるほど十分に勉強した場合)、説明しようとしたりするのにも役立ちます。後者の場合、必ずしも他の人に聞いてもらう必要はありません。まるで物事についてのチュートリアルを書いているかのように、座って自分の考えを書き留めることができます。
幸運を!
大規模な C++ プロジェクトでは、 http: //www.scitools.com/ のUnderstanding For C++ を常に使用しています。このツールは、実行時ではありませんが、コードをたどるのに非常に適しています。