북마크
🔥 좋았던 부분
💦 어려웠던 부분
- 실패할 수 있는 함수를 어떻게 처리할 것인지 정하는 기준은 무엇일까?
- throwing function
- Result Type
- Optional
입력이 이상하거나 디바이스가 실패할지도 모른다.
뭔가 잘못될 가능성은 늘 존재한다.
깨끗한 코드와 오류 처리는 확실히 연관성이 있다.
오류 처리 코드로 인해 프로그램 논리를 이해하기 어려워진다면 깨끗한 코드라 부르기 어렵다.
오류 코드보다 예외를 사용하라.
- 기존 방식은 플래그를 설정하거나 호출자에게 오류 코드를 반환하는 방법이었다.
- 위와 같은 방법을 사용하면 호출자 코드가 복잡해진다.
- 오류가 발생하면 예외를 던지는 편이 낫다.
- 호출자 코드가 더 깔끔해진다.
- 논리가 오류 처리 코드와 뒤섞이지 않기 때문이다.
Try-Catch-Finally 문부터 작성하라
- 예외가 발생할 코드를 짤 때는 try-catch-finally 문으로 시작하는 편이 낫다.
- 왜? try 블록에서 무슨 일이 생기든지 호출자가 기대하는 상태를 정의하기 쉬워진다.
- 강제로 예외를 일으키는 테스트 케이스를 작성한 후 테스트를 통과하게 코드를 작성하는 방법을 권장한다.
미확인 예외를 사용하라