null 사용을 최소화 하자는 클린 코드의 일환으로 보이네.

코딩하다보면 null을 아주 안쓸수는 없지만
잘못된 코딩습관을 들이면 데이터가 없는 것도 아니고 실패도 아니고 성공도 아닌 모호한 의미로 사용하게 될 가능성이 크잖아.

그리고 함수에서 null을 반환한다는 건,
호출자는 항상 if null 체크를 해줘야 한단 이야기고
실수로 깜빡했을 땐 NPE 발생하기 십상이고.

그래서 정확한 null의 의미를 고민한 이후에 신중하게 사용해야 된다고 생각해.

호출자 입장에서도 자바 기준으로 .toString() 대신 String.valueOf 같은 메소드를 사용해서 NPE 가능성을 최대한 줄이는게 중요하고.

나같은 경우엔 null 대신 디폴트 객체 라던가 빈 배열을 반환하도록 쓰는 편이야.
그래야 바깥에서 NPE도 줄이고 메소드 채이닝 걸기도 쉽고, 이래저래 코드가 깔끔해지기 좋은 것 같아.

사실 이런건 언어 차원에서 syntax sugar가 있으면 쓰기 좋지. @Nullable 어노테이션이라던가 코틀린의 null-safe operator('?') 연산자라던가

- dc official App