반응형
고민
- 가끔 spring이나 여타 라이브러리코드를 보면 심심치 않게 @Nullable같은걸 쓴걸 본적이 있으나 거추장스러울뿐 왜 쓰는지 몰랐다.
- 이번에 개발을 하면서 여러개 복잡한 코딩을 하다보니 해당 리턴값이 null에 대한 두려움이 생겼는데 이걸 처리하다보니 코드가 null가드로 지저분해지는게 싫었다.
결론
- @Nullable을 명시적으로 메소드상에 표시해줌으로써 해당 코드가 null이 넘어올 수 있는지 없는지를 구분하니 가독성도 커지고 보일러플레이트한 널가드도 코드를 더이상 안써도 되겠다는 생각이 들었다.
접근방법
- @Nullable 리턴코드에 써놓아 해당 메소드를 호출하는 곳에서 null처리를 하도록 표시해준다.
- 반대로 @NotNull 코드를 이용해서 리턴 null을 안보낸다는 표현도 해줄 수 있다. 만약 해당 코드가 null이면 오히려 해당 메소드의 책임으로 분리/전가할 수 있다.
'일반적인 로직적용' 카테고리의 다른 글
.use(moment()에서 java LocalDateTime으로 변환하기) (0) | 2021.01.25 |
---|---|
.use(awaitility를 사용하여 딜레이 테스트하기) (0) | 2020.12.20 |
.use(@DataRedisTest) (0) | 2020.12.20 |
.use(jpa 조건절에서 and 속에서 or사용하기) (0) | 2020.12.20 |
.use(@MockBean vs @Mock) (0) | 2020.12.17 |