sourcetrailのホームページ

今回はアリクイがトレードマークのsourcetrailを使ってコードを見える化してみます。

💁‍♀️

サンプルでDjangoのmodels.pyを使って見るよ






    Strory 
  1. 前提条件
  2. 
  3. sourcetrailのダウンロード
  4. 
  5. sourcetrailの手順
  6. sourcetrailの簡単な見方
  7. まとめ

前提条件

見える化するコードはDjangoのmodels.py(データベースを格納するファイル)です。

from django.db import models
from django.utils import timezone

class Category(models.Model):
    name = models.CharField(max_length=100)

    def __str__(self):
        return self.name

class Article(models.Model):
    title = models.CharField('title',max_length=100)
    thumb = models.ImageField(default='default.png', upload_to='images/')
    slug = models.SlugField(null=True)
    category = models.ForeignKey(Category, on_delete=models.PROTECT, verbose_name='category')
    body = models.TextField('content', blank=True)
    is_public = models.BooleanField(default=True)
    created_at = models.DateTimeField(default=timezone.now)
    updated_at = models.DateTimeField(default=timezone.now)

    def __str__(self):
        return self.title

MacOSXのバージョン

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.4
BuildVersion:   18E226

sourcetrailのダウンロード

ダウンロードページから自分のOS環境にあったファイルをダウンロードします。

sourcetrailのダウンロードページ

ダウンロード先に可愛いアリクイのアイコンがあればダウンロード完了です。

sourcetraiのアイコン

sourcetrailの手順

アリクイのアイコンをダブルクリックしてsourcetrailを開いてNew Projectをクリックします。

sourcetrailアプリのトップ画面

Sourcetrail Project Nameにproject名、Sourcetrail Project Locationにprojectの場所を選択してAdd Source Groupをクリックします。
今回は名前をblog, 場所をデスクトップにします。

sourcetrailのproject作成1

使用する言語を選択します。
今回はpythonを使用します。

sourcetrailの言語選択

次に仮想環境、ファイルの選択をします。
今回はファイルの選択のみを選択します。 ファイルの選択はFires & Directories to Indexの下にある+マークをクリックして追加してください。
ちゃんと選択したファイルがインポートされているか確認したい場合は下のShow filesから確認できます。
選択が終わったらCreateをクリックします。

sourcetrailのproject作成2

Startをクリック

sourcetrailのコード解析開始画面

OKボタンをクリックします。

上手くいけばコードがビジュアル化されます。

sourcetrailのコードのビジュアル化






sourcetrailの簡単な見方

初期画面のoverviewではカテゴリ(File、モジュール、クラス、関数、グローバル変数)と各カテゴリーの個数が表示されます。
(今回は関数、グローバル変数は使用していないので表示されていません。)

sourcetrailの構成要素

File(models.py)をのぞいてみると、クラスが2個存在するのがわかります。

sourcetrailのfileカテゴリ

表示されたクラスのうち、Articleをクリックします。

sourcetrailのクラス

クラス内で定義された変数とArticleにCategoryが紐づけられていることがわかりました。

まとめ

今回試しにsourcetrailを触ってみたのですが、思ってた以上にコードが見やすくなりました。
無料で使えるのでぜひ使ってみてください。