コードを整理していると、「このメソッドは本当に消しても大丈夫なのか」と迷うことがあります。
そこで、コードファイルをドラッグ&ドロップすると、メソッド同士の呼び出し関係をテキストと図で簡易確認できるサイトを作りました。
※あくまでも「確実に駄目な削除」に1個でも気付ける事が目的なため、完全な安全性の確認には使わないで下さい。
できること
コードファイルを読み込むと、次の情報を簡易的に確認できます。
- どのメソッドが、どのメソッドを呼んでいるか
- 各メソッドを起点にした呼び出し系列
- 呼び出し関係の図
- メソッド名やファイル名による系列検索
- 削除すると影響がありそうなメソッドの簡易確認
ファイルは画面へドラッグ&ドロップするだけで解析できます。
言語は拡張子から判定します。.html、.htm、.jsはJavaScriptとして扱います。
想定している使い方
このサイトは、不要そうなメソッドを削除する前の簡易チェックを目的としています。
例えば、削除しようとしているメソッドを検索し、そのメソッドを含む呼び出し系列が表示された場合は、別の処理から参照されている可能性に気づけます。
確実な判定はできませんが、誤って必要なメソッドを削除するケースを減らせる可能性があります。
免責事項
本ツールの解析結果は簡易的なものであり、正確性や完全性を保証するものではありません。
動的呼び出し、イベント、コールバック、継承、リフレクション、外部ファイルからの参照などは、正しく検出できない場合があります。
「呼び出されていない」と表示されたメソッドでも、実際には必要な可能性があります。削除前には、バックアップやバージョン管理を行い、動作確認やテストも実施してください。
あくまでも「確実に駄目な削除」に1個でも気付ける事が目的なため、完全な安全性の確認には使わないで下さい。
まとめ
コードを削除する前に、メソッドの呼び出し関係をざっくり確認するためのツールです。
専門的な静的解析ツールほどの確実性はありませんが、削除してはいけないメソッドに気づくための補助として使えます。
👇GitHub
GitHub の URL は、悪意のあるコードが含まれていないかをご自身で目視確認したい方向けに公開しています。
網羅的な確認はできませんが、ChatGPT にコードを添付して、悪意のあるコードが含まれていないか確認してもらう方法も有効です。
ご自身が使いやすいように ChatGPT などを活用してチューニングし、利用することも推奨します。
より使いやすいサイトを作成できた場合は、私も利用したいので公開していただけるとうれしいです。
なお、全面的に作り直したものではなく、本リポジトリを改造して作成したものを公開する場合は、MIT ライセンスの条件に従って公開してください。