답변은 이미 접수되었지만 실제 질문에는 대답하지 않습니다. 완성도를 위해 2 센트를 추가하고 싶습니다. 참조 용 This question here
가드 조건을 처리하는 것처럼 보이는 예제가 나타납니다. "이 방법을 실행하는 경우에만 ...."또는 "이 루프 반복을 수행하면 ..."과 같은 것입니다.
이러한 경우에 3 개 또는 4 개의 경비원 그룹이 있으면 매우 깊게 들여 쓰기가 될 수 있습니다 코드를 읽기가 더 어렵게 만듭니다.
어쨌든이 코드를 더 읽기 쉽도록 수정하는 방법은 일찍 반환하는 것입니다. 대신
if (some condition) {
// some code
if (some other condition) {
// some more code
}
}
의 당신은
if (!some condition) {
return;
}
// some code
if (!some other condition) {
return;
}
// some more code
을 쓸 수 있습니다 당신은 이제 모든이 중첩의 1 개 수준이 '어떤 조건'이 충족되지 않는 한이 방법을 실행하지 않는 것이 분명하다.
for (some condition) {
if (some other condition) {
// some code;
}
}
은 당신이 여기에 언급 할 것은 '다른 조건'을 충족하지 않는 한,이 루프를 건너 뛸 수 있다는 것입니다
for (some condition) {
if (!some other condition) {
continue;
}
// some code
}
된다 :
같은 계속 사용하여 루프 간다.
중첩 된 if 문을 3 플래그로 지정하는 데 대한 기본값은 위의 예제는 2 단계 만있는 반면 생각했습니다. 코드 주위에 더 이상 반복문이나 if 문이 있습니까? –
예, 그 주위에 더 많은 if 문이 있지만 규칙이 변경되었으며 허용되는 최대 값은 1입니다.이를 리팩토링해야합니까?이를 줄이려면 어떻게해야합니까? – james