본문 바로가기

예외2

빠르게 실패하기(fail-fast) VS 안전하게 실패하기(fail-safe) 이 주제에 대해서 "엘레강트 오브젝트-조영호 번역" 책에서 다루고 있습니다. 이론상으로만, 이해하고 있었습니다. 그러나, 최근 사내 서비스를 트러블 슈팅하며, 다른 분의 코드를 리뷰하며 이 주제에 대해서 말할 수 있었던 기회가 있었습니다. 그러나, 역시 이론과 코드에는 거리감이 있었고, 그 상황에서 저또한 명확하게 설명하기 힘들었습니다. 저 스스로는 빠르게 실패하기 를 실천하기 위해서 코드 상에서 노력하고 있는데, 이것을 누군가에게 설명하려니 잘 안되더군요. 그래서 팀원분에게 이 부분을 설명해주면서 헀던 이야기를 공유합니다. 먼저 빠르게 실패하기와 안전하게 실패하기에 대해서 이론으로 살펴보고 난 뒤에, 코드로서 살펴보겠습니다. 이 두 가지는 적절한 상황에 잘 활용하는 것이 중요하지만-, 만약 코딩 중에 .. 2021. 4. 16.
예외를 처리하는 Best Practice는 무엇일까?(with. 토비 스프링, 이펙티브 자바) 들어가기 예외를 어떻게 하면 우아하게 처리할 수 있을까? 위 질문의 답을 찾기 위해- 이제부터 토비 스프링의 책 내용과 이펙티브 자바의 내용을 소개하고자 한다. 예외 블랙홀 예외를 잡고 아무 행위도 하지 않는다. 이것은 굉장히 위험한 행위이다. 이런 코드도 마찬가지로 위험한 코드이다 그렇다면? 어떻게 해야될까? 예외를 처리할 때는 모든 예외는 적절하게 복구되든지 아니면 작업을 중단시키고 운영자 또는 개발자에게 분명하게 통보돼야 한다. 또한 Throws 는 무의하고 무책임하다. 바로 아래와 같은 코드를 말한다. 위 두 가지 나쁜 습관은 어떤 경우에도 용납하지 않아야 한다. Item77. 예외를 무시하지 말라. - 이펙티브 자바 왜 우리는 예외를 명시하는 이유가 무엇인가? API 설계자에게 메서드 선언에 예.. 2021. 1. 4.