ツール

ソースコードを見える化する方法【結論→Sourcetrailを使う】

11月 29, 2019

how to visualize your source code
プログラム学生
ソースコードが複雑すぎて、どんなことになってるか分からないんですが、、、何か良い方法がありますか?
ソースコードの中身を解析して、可視化してくれる無料のツールの「Sourcetrail」というのがあるので、それを紹介するよ。
Tommy

この記事で分かること

  • ソースコードが複雑な時の対処方法が分かる
  • ソースコードを見える化するツール(sourcetrail)が分かる
  • sourcetrailのインストール方法が分かる

ソースコードを見える化する概要

summary of how to visualize source code

この記事では、ソースコードを見える化するためのツール「sourcetrail」の使い方について説明して、ソースコードをどのように見える化するのかを説明します。

ソフトウェアの開発に携わっているとよく下記のような問題に遭遇します。

自分が書いたコードであれば理解できるのですが、人が書いたコードに加えることが大半です。ですが、人が書いたコードは相当に読みにくいものです。

  • ソースコードの全体像が掴みにくい
  • ファイル同士がどう関係しているかわからない
  • 同じ変数やマクロがどのファイルで使われているかわからない

そんな時には、「sourcetrail」というツールを使うことで、問題を解決してくれます。

  • ファイル、クラス、関数、属性、構造体などカテゴリ別にソースコードを把握できる
  • ファイルの関連をグラフィカルに表示してくれる
  • プロジェクト内でのどのファイルから変数やマクロが使われているか表示してくれる

では、「sourcetrail」のインストール方法をみていきましょう。

sourcetrailインストール方法

how to install sourcetrail for windows

下記のGitHubからインストーラーをダウンロードします。

Sourcetrail · GitHub

「Sourcetrail_2019_4_61_64bit_Installer」を開きます。
(今回は「Sourcetrail_2019_4_61_64bit_Installer」を使用しました。)

1.インストーラーの実行

インストーラーファイル「sourcetrail.msi」を開くとインストール開始のダイアログ場所が出てきます。インストールを開始するので、「Next」を押します。

sourcetrail install step1

2.インストール場所の確認

インストールする場所の設定画面が出てきます。そのままでOKなので、「Next」を押します。

sourcetrail install step2

3.ショートカット作成の選択

ショートカットをデスクトップとスタートメニューに作るかの選択画面が出てきます。私はスタートメニューだけにショートカットを作成しました。

sourcetrail install step3

4.インストールの開始

全ての設定が終わったら、「Install」ボタンを押してインストールを開始します。

sourcetrail install step4

5.インストールの完了

下記の画面が出ればインストールは完了です。

sourcetrail install step5

以上でインストールは完了です。続いて、「sourcetrail」の使用方法をみていきましょう。

sourcetrail具体的な使い方

how to use sourcetrail in detail

さっそく、「sourcetrail」を実行してみましょう。

1.sourcetrailの開始画面

下記のようなトップ画面が表示されました。

sourcetrail openning screen

2.サンプルプロジェクトの開始

「tictactoe_cpp」というサンプルプロジェクトを開いてみると、プロジェクト内のファイルやマクロ、クラス、関数がまとめられた画面が表示されました。

sourcetrail project top

3.クラス依存関係の表示

このグラフでは、次のようなことを読み取ることができます。

  • クラス「HumanPlayer」はクラス「Player」の継承クラスである。
  • クラス「TicTacToe」のメソッド「SelectPlayer」からインスタンスを作成される。
  • クラス「Filed」の属性「Token」を使用している。

sourcetrail result graph

-ツール
-

© 2021 Tommy's blog Powered by AFFINGER5