"허가가 아니라 용서를 구하세요": 기술적 설명
프로그래밍에서 "허가가 아니라 용서를 구하세요"라는 문구는 두 가지 대조되는 코딩 스타일을 나타냅니다. :
"허가를 요청하세요" 스타일:
if can_do_operation(): perform_operation() else: handle_error_case()
"용서 요청" 스타일:
try: perform_operation() except Unable_to_perform: handle_error_case()
"허가 요청" 접근 방식에서 can_do_Operation의 존재 () 검사는 작업을 수행할 수 없는 경우 Perform_Operation() 호출이 실행되는 것을 방지합니다. 그러나 이 접근 방식은 can_do_Operation() 검사의 정확성에 의존하므로 동적 환경이나 외부 리소스를 처리할 때 항상 신뢰할 수 있는 것은 아닙니다.
"용서를 구하세요"의 이점
"용서를 구하는" 스타일은 다음과 같은 이점을 제공합니다. 이점:
예: 인스턴스 속성 액세스
귀하의 예에서는 인스턴스 속성에 접근할 때 "용서 요청" 사용에 대해 문의합니다. 일반적으로 프로그래머 오류로 간주되지만 존재하지 않는 속성에 액세스하는 것은 선택적 객체 부분을 처리할 때와 같이 유효한 시나리오일 수 있습니다.
예외 처리기에서는 속성이 None이 아닌지 확인하는 것이 더 Pythonic합니다. 선택적 속성의 경우 bar 속성은 일반적으로 초기에 None으로 초기화되고 사용 가능한 경우 의미 있는 값으로 설정됩니다. 이를 통해 다음 테스트가 가능합니다.
if foo.bar is not None: handle_optional_part(foo.bar) else: default_handling()
결론
"허가가 아닌 용서를 구하라" 원칙은 특히 다음과 같은 경우 프로그램 실행의 자연스러운 부분으로 예외를 수용할 것을 권장합니다. 선택적 기능이나 외부 리소스 상호 작용을 처리합니다. 동적 및 동시 환경에서 더 큰 유연성과 적응성을 제공하는 동시에 예외 처리 메커니즘을 통해 오류를 처리할 수 있습니다.
위 내용은 허락이 아닌 용서를 구하십시오: 선제적 검사보다 예외 처리가 더 나은 때는 언제입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!