error choice

panic과 Result 선택표

panic과 Result는 모두 실패를 다루지만, 회복 가능성과 API 경계에서 선택이 갈립니다.

판단 기준

호출자가 다른 선택을 할 수 있는 실패인가

recoverable

파일 없음, 파싱 실패처럼 사용자가 대응할 수 있으면 Result입니다.

unrecoverable

불변식 붕괴나 버그성 상태는 panic이 더 명확할 수 있습니다.

binary

애플리케이션 끝단에서는 메시지를 보여 주고 종료할 수 있습니다.

library

라이브러리는 호출자에게 판단권을 넘기는 Result가 안전합니다.