"if", "for", "while", "switch" 그리고 "try" 와 같은 제어문은 너무 깊게 중첩되어서는 안됩니다.

 

중첩된 if, for, while, switch 그리고 try 구문은 “스파게티 코드” 라고 알려진 코드를 만드는 핵심 요소입니다. 이러한 코드들은 읽거나 리팩토링하기 힘들고, 그러므로 유지보수하기도 어렵습니다.

규칙을 어긴 코드

기본 임계값인 3에서:

if (condition1) {                  // 규칙을 준수한 코드 - depth = 1
  /* ... */
  if (condition2) {                // 규칙을 준수한 코드 - depth = 2
    /* ... */
    for(int i = 0; i < 10; i++) {  // 규칙을 준수한 코드 - depth = 3, 임계값을 초과하지 않습니다.
      /* ... */
      if (condition4) {            // 규칙을 어긴 코드 - depth = 4
        if (condition5) {          // Depth = 5, 임계값을 초과했지만, depth = 4 인 코드에만 문제를 제기합니다.
          /* ... */
        }
        return;
      }
    }
  }
}

If you like SONARKUBE, don’t forget to give me a star. :star2:

원문으로 바로가기

Star This Project