이펙티브 코틀린 1장 아이템7 - 결과 부족이 발생할 경우 null 과 Failure를 사용하라
원하는 결과를 못 만들어내는경우가 있다.예를들어- 서버로 부터 데이터를 읽어올려고 햇는데 인터넷 연결 문제로 실패한경우- 조건에 맞는 첫번째 요소를 찾으려 했는데 조건에 맞는 요소가 없는 경우- 텍스트를 파싱해서 객체를 만들려고 했는데 텍스트의 형식이 맞지 않는 경우 예외 상황을 처리하는 방법은 다음과 같이 두개가 있다.1. null 또는 실패를 나타내는 sealed 클래스 사용 (현재 내가 쓰고있는 방법이다)-> 아래 2번 방법보다 알아보기 쉽고 효율적2. 예외 throw-> 놓칠 가능성이 있고 전체 애플리케이션을 중지시킬수 있다. 여기서 예외는 어떤 정보를 전달하는 역할을 하면 안된다. 오직 잘못된 상황을 나타내고 처리하는 용도로만 사용해야 한다.이유1. 예외가 전파되는 과정을 추적하기 어려움2. 코..
공부/Kotlin
2024. 9. 8. 08:55
이펙티브 코틀린 1장 아이템6 - 사용자 정의 오류보다는 표준 오류를 사용하라
이 아이템은 큰 내용이 없어서 간단히 요약- exception을 던질 일이 있다면 내가 오류를 정의하기 보단 표준 라이브러리 오류를 사용하자 아래와 같은 표준 오류들이 있다.- IllegalArgumentException- IllegalStateException- IndexOutOfBoundxException- ConcurrentModificationException- UnsupportedOperationException- NoSuchElementException등
공부/Kotlin
2024. 9. 8. 08:30