panic

panic 사용 경계

panic은 복구하기 어려운 버그성 상황을 드러낼 때 쓰고, 예상 가능한 실패에는 맞지 않습니다.

판단 기준

사용자가 회복할 수 있는 실패인가, 프로그램 불변식이 깨진 것인가

bug

불가능해야 할 상태가 발생하면 panic이 적합할 수 있습니다.

unwrap

학습 예제나 반드시 성공하는 전제에서만 제한적으로 씁니다.

expect

실패 메시지에 왜 성공해야 했는지 남깁니다.

boundary

라이브러리는 호출자가 처리할 수 있게 Result를 주는 편이 좋습니다.