exception
External Client class에서 Exception을 던지는게 좋을까?
External Client class에서 Exception을 던지는게 좋을까?
2020.08.21예시 API 응답으로 수신하는 code 및 그에 따른 반환값 when (response.code) { 1000 -> 성공 (데이터 반환) 1007 -> 기처리 (데이터 반환) 2000 -> 구분해야하는 실패1 2001 -> 구분해야하는 실패2 else -> 그 외 모든 응답 코드(실패) } 예시 상황에서, External Client class에서 Exception을 직접 던지는게 나을까? 아니면 return 기반으로 가는게 나을까? 둘 다 사용하는 hybrid로 가는게 나을까? External Client class에서 Exception을 직접 던지는 경우 예시) 후술하겠지만 이렇게 처리하는 것은 좋지 않다. AbcClient { fun post() { val response = webClient.po..
[Effective Java] 10장 예외
[Effective Java] 10장 예외
2020.02.27[Java/Spring] 예외 : Global Exception Handler 작성법 [코딩 노트] Exception 처리, 어떻게 하는게 좋을까? 아이템 69. 예외는 진짜 예외 상황에만 사용하라 아이템 70. 복구할 수 있는 상황에는 CheckedException을, 프로그래밍 오류에는 RuntimeException을 사용하라 아이템 71. 필요 없는 CheckedException 사용은 피하라 Checked Exception은 다음과 같은 상황에서 사용 호출하는 쪽에서 복구할 것이라고 여겨지는 상황 예를 들면 File IO. 예외가 발생하면 닫았다가 다시 열 수도 있고 등등 복구가 가능함. Unchecked Exception은 다음과 같은 상황에서 사용 제대로 쓴다면 일어날 가능성이 없는 경우 예외..
Exception 처리, 어떻게 하는게 좋을까?
Exception 처리, 어떻게 하는게 좋을까?
2019.05.29Error와 Exception의 차이 에러 : 애초에 예상이 불가능한 것. 예외 : 발생을 예상할 수 있는 것. 그리고 예상할 수 있기 때문에 그에 대한 대비로 try-catch가 있는 것. checked exception 컴파일 타임에 경고를 해주는 예외. 예외 처리가 안되어 있으면 컴파일이 안된다. 컴파일 타임에 발생하는 Exception이라고 말하기는 좀 그렇다. 정확히는 Exception은 Runtime에 발생하며 컴파일 타임에 경고를 해주는거지. 대표적인게 `` IOException, SQLException`` unchecked exception 컴파일 타임에 경고를 안해주는 예외. 예외 처리가 안되어 있어도 컴파일이 된다. 대표적인 것이 `` NPE, IndexOutOfBoundsExcepti..