icon
icon

PythonでSourcetrailを使用する方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonでSourcetrailを使用する方法について現役エンジニアが解説しています。Sourcetrailは他人の書いたソースコードを理解し、生産的にコーディングを行えるよう支援するツールで、各種エディタやPythonなどの言語に対応しています。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

PythonでSourcetrailを使用する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

 

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まるでしょう

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PythonでSourcetrailを使用する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

Sourcetrailとは

Sourcetrailとは、オーストリアのCoati Softwareによって開発されているツールで、元々は商用ライセンスで採用されていました。

しかし、2019年11月18日にオープンソース化され、無償で利用可能となりました。

Sourcetrailは、開発者が他人の書いたソースコードを理解し、生産的にコーディングを行えるよう支援するものです。

例えば、VS Codeなどのテキストエディタで開発を行う場合、コードの文法をチェックするものの、既存のソースコードを理解する機能は持ち合わせておらず、理解に多大な時間がかかります。

 

対して、Sourcetrailであれば、

  • インタラクティブな依存関係グラフ
  • 簡潔なコードビュー
  • 効率的なコード検索
1時間でできる無料体験!

といった機能を組み合わせ、ソースコードの概要と詳細情報まで提供しています。

そして、これらの機能は様々なテキストエディタと接続することが可能です。

動作環境はWindows、Mac、Linuxに対応しており、「C」「C++」「Java」「Python」に対応しており様々な場面で使用できるでしょう。

 

Pythonで使える機能とメリット

Sourcetrailはソースコードを解析するツールであり、Pythonにおいて具体的に何ができるのか、みていきます。。

まずは「構成要素の確認」です。

コード内で使われているモジュール、クラス、変数、関数を確認することができます。

 

次は「ソースコードの解析」です。

構成要素を確認できたら、この機能を使うことでコードの依存関係やモジュールを確認することが可能です。

これらの機能を使用してPythonのクラスの依存関係を調べることで、他人の書いたソースコードの書き直しやアップデートを行いやすくなるというメリットがあります。

 

[PR] Pythonで挫折しない学習方法を動画で公開中

実際に使ってみよう

それでは、実際にインストールして使ってみましょう。

こちらからインストールページを開き、使用しているOSに合わせてインストーラをダウンロードします。

Sourcetrailをインストールする公式サイト
インストーラを起動しインストールを完了されたらSourcetrailを起動しましょう。

インストールしたSourcetrailの初期起動画面

スタート画面右側にtictactoe.pyがあるので、このコードの中身をみていきます。

Sourcetrailのスタート画面右側のtictactoe.pyコード内容

Overview画面にファイル、モジュール、クラス、関数を解析するメニューが表示されます。

次に、modulesを開き使われているモジュールをみてみましょう。

開くとoverviewでファイル名がモジュール名として表示されるため、もう一度ファイル名をクリックして、ソースコード内で使われているモジュール名を確認できます。

SourcetrailのOverview画面でファイル、モジュール、クラス、関数を解析するメニューが表示された画面

アルファベット順にモジュールの一覧が表示されています。

更に右側には、ソースコード内の該当箇所が表示されてマウスカーソルを合わせると、モジュールがハイライトされて、ハイライトされた箇所の解析も行われます。

Pythonの場合、黄色が関数、灰色がクラスということが確認できるでしょう。

それではこの中からmain関数を開きます。

Sourcetrailのtictactoe.pyのmain関数の画面

この図からmain関数を実行すると、TicTacToeモジュールが呼び出されています。

それではこのTicTacToeを開いていきましょう。

Sourcetrailのtictactoe.pyのmain関数で使われているTicTacToeモジュールの画面
ここで青色で表示されているモジュールはクラス内で定義されている変数を示しています。

クラス内のモジュールをクリックすることで、モジュールの依存関係を選択したモジュールを中心に図示してくれるでしょう。

 

まとめ

今回はオープンソースになったソースコード解析ソフトのSourcetrailを試したものを解説します。

簡単なソースコードなら自分で処理の流れを追いかけることができるものの、複雑になってくるほど流れが分からなくなり、読んでいく中で混乱しやすくなります。

Sourcetrailなら処理の流れを順を追って確認することができるため、モジュールの依存関係を知ることができて、コードレビューをしやすくなったり、バグ取りに役立つツールです。

 

コラム

コスパとタイパ、両方結果的に良くなる良くなる学び方とは?

「スクールは高いし時間も縛られて効率が悪い」と考える方は多いと思います。
もちろん、時間も費用もかかることは間違いありません。
ただ 結果的に無駄な学びにお金も時間もかける方がリスクが高いという考えもあります。

コスパ・タイパ最適化の参考として、 テックアカデミー卒業生がスクールを選んだ理由 をご紹介します。

  • ・困ったときに、質問や相談できる相手がいるため挫折しなかった
  • ・プロとして必要なスキルのみを深く学べたので無駄がなかった
  • ・副業案件の提供と納品までのサポートがあったので目的を達成できた

安価・短期間で広く浅く学んでも意味がありません。 本当に自分の目的が達成できるか、それが重要です。
自分にどのスキルや学び方が合っているか、どんな学習方法かなど、お気軽に 無料相談 に参加してみませんか?

カウンセラー・現役のプロへ、何でも気軽に無料相談可能。 30分か60分お好きな時間が選べて、かつ3回まで すべて無料で ご利用できます。
無理な勧誘は一切ない ので、お気軽にご参加ください。

今なら相談した方限定の割引・参加特典付き! 無料相談はこちら

執筆してくれたメンター

メンター三浦

モバイルゲームを運用している会社のエンジニアをしています。趣味でWEB開発やクラウドコンピューティングもやっており、ソフトもハードもなんでもやります。

TechAcademyジュニアではPythonロボティクスコースを担当しています。好きな言語はPython, Node.js。

 

大石ゆかり

PythonでSourcetrailを使用する方法がよくわかったので良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する