Google 태그 관리자 아이콘

일반적인 로직적용

.use(@Nullable의 재발견)

silvergoni 2020. 12. 21. 22:32
반응형

고민

  • 가끔 spring이나 여타 라이브러리코드를 보면 심심치 않게 @Nullable같은걸 쓴걸 본적이 있으나 거추장스러울뿐 왜 쓰는지 몰랐다.
  • 이번에 개발을 하면서 여러개 복잡한 코딩을 하다보니 해당 리턴값이 null에 대한 두려움이 생겼는데 이걸 처리하다보니 코드가 null가드로 지저분해지는게 싫었다.

결론

  • @Nullable을 명시적으로 메소드상에 표시해줌으로써 해당 코드가 null이 넘어올 수 있는지 없는지를 구분하니 가독성도 커지고 보일러플레이트한 널가드도 코드를 더이상 안써도 되겠다는 생각이 들었다.

접근방법

  • @Nullable 리턴코드에 써놓아 해당 메소드를 호출하는 곳에서 null처리를 하도록 표시해준다.
  • 반대로 @NotNull 코드를 이용해서 리턴 null을 안보낸다는 표현도 해줄 수 있다. 만약 해당 코드가 null이면 오히려 해당 메소드의 책임으로 분리/전가할 수 있다.