セキュリティ/静的解析/Sonar/複雑度計算式
提供: 初心者エンジニアの簡易メモ
2019年11月25日 (月) 15:35時点におけるAdmin (トーク | 投稿記録)による版 (Admin がページ「Sonar/複雑度計算式」を「セキュリティ/静的解析/Sonar/複雑度計算式」に、リダイレクトを残さずに移動しました)
サイクロマティック複雑度サンプルコード(循環的複雑度
- returnのないfunctionは初期値1
- returnのあるfunctionは初期値0
- ifで+1
- ifのor,andごとに+1
- switchのcaseごとに+1
- forで+1
function exmaple() { if ($hoge || $fuga) { } switch ($hoge) { case 1: break; case 2: break; } foreach ($foge as $value) { } return 1; }
2+2+1-1で4
ifについて
if ($hoge) {} if ($fuga) {}
これは+2
if ($hoge) { } elseif ($fuga) { }
これは+2
if ($hoge) { } else { }
これは+1