앞선 글에서 이런 이야기를 했습니다. 예외를 무작정 삼키지 말 것 UI + async 환경에서는 더 위험하다는 것 그런데 실무에서는 이보다 더 자주 발생하는 문제가 있습니다.
모든 예외를 동일하게 취급하는 것입니다. 코드를 보다 보면 이런 형태가 자주 보입니다. catch (Exception ex) { ShowMessage("오류가 발생했습니다."); } 문제 없어 보일 수 있습니다.
하지만 이 코드는 생각보다 많은 문제를 만듭니다. 예외는 크게 두 가지로 나뉩니다.
첫 번째는 도메인 예외 (Business Exception)입니다. 잔액이 부족합니다 이미 존재하는 사용자입니다 승인되지 않은 상태입니다 이건 시스템 오류가 아닙니다.
비즈니스 규칙에 의해 발생한 결과입니다. 실패라기보다는 거절에 가까운 흐름입니다.
두 번째는 기술 예외 (Technical Exception)입니다. DB 연결 실패 네트워크 타임아웃 NullReferenceException JSON 파싱 실패 이건 비즈...
원문 링크 : try-catch를 무작정 감싸면 안 되는 이유 (3)