私は私のスイッチケース 私のコードがあるのサイクロマティック複雑減らしたい:switch文の循環的複雑度を削減 - ソナー
public String getCalenderName() {
switch (type) {
case COUNTRY:
return country == null ? name : country.getName() + HOLIDAY_CALENDAR;
case CCP:
return ccp == null ? name : ccp.getName() + " CCP" + HOLIDAY_CALENDAR;
case EXCHANGE:
return exchange == null ? name : exchange.getName() + HOLIDAY_CALENDAR;
case TENANT:
return tenant == null ? name : tenant.getName() + HOLIDAY_CALENDAR;
default:
return name;
}
}
このコードブロックの複雑さは、16で、10 国にそれを減らしたいがccp、交換とテナントは私の別のオブジェクトです。タイプに基づいて、それぞれのメソッドを呼び出します。
"このコード複雑度は16で、10に減らしたいと思います。なぜそれを9に減らしませんか?または8?または11?なぜ問題が16ですか? –
私のソナーのルールによると、私はそれを10以下にしたい、我々はさらにそれを減らすことができれば素晴らしいだろう。 @AndyTurner –
@AmarMagarあなたはそれぞれの場合、またはその意図的にbreak文を追加することを忘れましたか?ブレークステートメントを追加することが循環器の複雑さを軽減するのに役立つかどうかはわかりません。 –