무언가를 할 수 있다는 의미가 그렇게 해야한다는 의미는 아닙니다. 3항 연산자를 중첩하는 경우도 마찬가지입니다. 3항 연산자를 중첩하면 코드를 작성할 당시에는 명확해보이지만, 6개월후, 유지 보수하는 사람 입장에서는 이해가 되질 않습니다. 머리를 긁적이며 당신을 욕하겠죠.
명확하게 하기위해, 중첩된 작업을 별도의 구문으로 분리하여 작성하십시오.
규칙을 어긴 코드
public String getReadableStatus(Job j) {
return j.isRunning() ? "Running" : j.hasErrors() ? "Failed" : "Succeeded"; // 규칙을 어긴 코드
}
규칙을 준수한 해결책
public String getReadableStatus(Job j) {
if (j.isRunning()) {
return "Running";
}
return j.hasErrors() ? "Failed" : "Succeeded";
}
If you like SONARKUBE, don’t forget to give me a star.