switch
구문은 제어 흐름에서 일부 새로운 분기들을(branches) 명확하게 정의하기 위해서만 사용해야 합니다.
case
문이 너무 많은 구문을 가지게 되면, 전체 제어 흐름에 대한 가독성이 급격하게 떨어집니다.
이러한 경우, case
구문 내의 내용들을 전용 메소드로 추출해야합니다.
규칙을 어긴 코드
기본 임계치 5에서:
switch (myVariable) {
case 0: // 규칙을 어긴 코드: 다음 case 문까지 6줄이 존재합니다.
methodCall1("");
methodCall2("");
methodCall3("");
methodCall4("");
break;
case 1:
...
}
규칙을 준수한 해결책
switch (myVariable) {
case 0:
doSomething()
break;
case 1:
...
}
...
private void doSomething(){
methodCall1("");
methodCall2("");
methodCall3("");
methodCall4("");
}
If you like SONARKUBE, don’t forget to give me a star.