스터디/이펙티브코틀린
아이템 7 - 결과 부족이 발생할 경우 null과 Failure를 사용하라
다른 시스템에서 데이터를 인터넷 연결등의 이유로 받아오지 못하는 경우 조건에 맞는 요소를 찾지 못하는 경우 파싱을 시도했으나 형식이 맞지않아 실패하는 경우 위와 같이 함수가 원하는 결과를 만들어 내지 못할 때 예외를 정보를 전달하는 방법으로 사용해서는 안된다. 다음과 같은 방식을 고려하자. 충분히 예측할 수 있는 범위의 오류 null, 실패를 나타내는 sealed 클래스를 반환한다. null을 반환하는 경우: 추가적인 정보를 전달하지 않아도 되는 경우 sealed 클래스를 반환하는 경우: 추가적인 정보를 전달해야 하는 경우 예측하기 어려운 경우 예외를 throw 한다. 예외를 정보를 전달하는 방법으로 사용하면 다음과 같은 문제가 발생하기 때문이다. 개발자가 exception이 전파되는 과정을 제대로 추적..