teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

補足

2016/12/03 23:04

投稿

popobot
popobot

スコア6588

answer CHANGED
@@ -20,3 +20,5 @@
20
20
  ※ご自身で分岐を増やしたり、減らしたりしてNPathの値がどう変わるかみると理解が深まると思いますよ
21
21
 
22
22
  phpmdのjava版である[checkstyle](http://checkstyle.sourceforge.net/config_metrics.html#NPathComplexity)には詳しい説明が載っているので参考にしてください。言語は違っても基本的な考え方は同じです。
23
+
24
+ 余談ですが、同じような指標で[循環的複雑度](https://ja.wikipedia.org/wiki/%E5%BE%AA%E7%92%B0%E7%9A%84%E8%A4%87%E9%9B%91%E5%BA%A6)(Cyclomatic Complexity)というものもあります。[phpmd](https://phpmd.org/rules/codesize.html#cyclomaticcomplexity)にもあります。こっちの方はネット中にも情報が多いですね

1

補足

2016/12/03 23:04

投稿

popobot
popobot

スコア6588

answer CHANGED
@@ -16,4 +16,7 @@
16
16
  }
17
17
  ```
18
18
  一つの関数内のたくさんの分岐があると組み合わせも多くなり、NPathの値も多くなります。組み合わせが多いということは複雑なコードで可読性も落ちますし、その分テストも大変になります。
19
- ※ただ、複雑さを測る指標の一つなので参考程度にみればいいと思いますよ。
19
+ ※ただ、複雑さを測る指標の一つなので参考程度にみればいいと思いますよ。
20
+ ※ご自身で分岐を増やしたり、減らしたりしてNPathの値がどう変わるかみると理解が深まると思いますよ
21
+
22
+ phpmdのjava版である[checkstyle](http://checkstyle.sourceforge.net/config_metrics.html#NPathComplexity)には詳しい説明が載っているので参考にしてください。言語は違っても基本的な考え方は同じです。