1
주제 이름에서와 마찬가지로 최선의 규칙이 무엇인지 궁금합니다.코너 케이스의 변수에 문자열 메시지를 할당하고 메소드 끝에서 또는 즉시 반환해야합니까?
주제 이름에서와 마찬가지로 최선의 규칙이 무엇인지 궁금합니다.코너 케이스의 변수에 문자열 메시지를 할당하고 메소드 끝에서 또는 즉시 반환해야합니까?
이 질문에 대한 대답은 본질적으로 또 다른 질문입니다. 코드를 읽고 유지하기가 쉽습니다.
Martin Fowler (잘 알려진 저자 및 프로그래밍 전문가)은 Replace Nested Conditional with Guard Clauses이라는 리팩터링을 제안합니다.
나는 보통 코드를보다 명확하고 쉽게 읽을 수 있기 때문에 guard clauses을 사용하는 것이 더 마음에 듭니다. 그러나 잠시 동안 코드없이 intent이 명확하지 않은 경우가 있습니다.
이것은 매우 의견을 기반으로합니다. 어떤 사람들은 첫 번째 것이 더 좋다고 ("가능한 한 빨리 복귀"하고 "빠르다"), 다른 사람들은 한 지점에서만 돌아 오는 것이 더 쉽다고 말한다 (디버깅을 쉽게하기 위해). – Tom
이것은 주로 환경 설정으로 귀결됩니다. 반품 횟수를 최소화하면 디버그하고 읽는 것이 더 쉬워 지지만, 단일 지점이 아닌 여러 지점으로 돌아 가면 몇 가지 방법을 구현하기가 쉽습니다. –