본문 바로가기

Career

Garmin 시계가 알려주는 nullable

Java 언어는 null 이라는 것 때문에 오랫동안 고통을 받아왔다.

그 고통은 보통 NullPointerException 라는 예외로 나타난다. (이름에서도 포인터라고 적혀있지만 C언어의 포*터가 자연스럽게 생각난다.)

 

그래서 방어코드를 추가하거나, @Nonnull 이나 @Nullable 같은 annotaion을 넣거나

Bean Validation 등으로 값을 검증하는 추가적인 절차가 필요하다.

 

자전거로 출근을 하는데 현재 사용하는 fenix 5x에 이런 차이를 명확하게 보여주고 있어서 재미있어서 글을 적어보았다.

1. 온도센서 연결 (케이던스 센서는 아직 탐색중)

2. 케이던스 센서 탐색중

3. 케이던스 센서 연결

4. 케이던스 센서 연결 후

5. 주행 후 정지 시

 

2번과 4번이 왜 변화가 없었는지까지 안다면 당신은 찐~ 개발자이다. 하하.