1

メソッドのCCNを検出するためにjavancssを使用しています。ソースコードには、値が1から35まで変化するメソッドがあります(さらに大きい)。

現実的な限界となる可能性のあるガイドラインはありますか?ここの記事はいくつかのアイデアを提供します-http://java-metrics.com/cyclomatic-complexity/cyclomatic-complexity-what-is-it-and-why-should-you-care

私は10をソフト制限、15をハード制限と考えています。主な理由は、値が大きくなるとテストが複雑になるためです。

SOコミュニティからお聞きしたいのですが。

4

2 に答える 2

1

リンク ペーパーにも記載されているように、最も重要な側面は、10 または 15 の制限をハード リミットと見なさず、制限を超えた場合は常に正当な理由を示すことだと思います。そのようにして、重要なメソッドを注意深く調べて、それらがこれほど複雑であることが本当に必要かどうかを確認することを「強制」されます。

于 2011-04-21T07:47:40.300 に答える
1

私が使用する2つの方法があります。

  1. 最大値を選択し、それに固執します (私の場合は 10 です)。
  2. 定期的にコードを見直して、スコアが最も高いメソッドを修正してください。

使用するもう 1 つの方法は、バグを修正するときに非常に厳密にすることです。バグを修正するためにどの方法が変更されたかをソース管理で確認してください。これらのメソッドをリファクタリングして、複雑さを軽減します。

于 2011-04-21T10:07:36.697 に答える