LoginSignup
0
0

コードの構造や複雑さを示すVScode拡張機能

Last updated at Posted at 2023-07-23

良いコード悪いコードという著書の中に循環的複雑度(サイクロマティック複雑度)という言葉が出てきました。これはコードの構造的な複雑さを示していて、条件分岐やループ処理が増える、ネストが増えるなどの要因によって循環的複雑度が高い数値を示します。以下はその目安です。

循環的複雑度 複雑さの状態 バグ混入確率
10以下 非常にいい構造 25%
30以上 構造的なリスクあり 50%
50以上 テスト不可能 70%
75以上 いかなる変更も誤修正を生む 98%

これらは早期リターンやストラテジパターンなどにより低減可能です。

で、調べてみるとVS Codeの拡張機能に
Codalyze - Code Complexity Report Generatorというものがありました。

Updateは2020年の8月で止まっていますが、使ってみた感じは結構良さげでした。
ただ、詳細は見れないのでその辺りは他にいいのがあったら使ってみたいなという感じです。
https://marketplace.visualstudio.com/items?itemName=selcuk-usta.code-complexity-report-generator

試しにやってみたらレポートが作成されました。
実行は以下の通り

Run
Use Ctrl + Shift + P (Windows) / Shift + Command + P (MacOS) shortcut and write Codalyze. Finally, run it!

こんなレポートが作成される。
スクリーンショット 2023-07-23 21.29.41.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0