-
[clean code] 8일차책 정리/Clean Code 2022. 5. 6. 19:18
- 오늘의 책읽기: 7장. 오류처리 까지!
- 오늘의 과제: TIL 작성하기
- 제출기간: 48시간! 토요일 오전 6시까지
TIL 작성하기
- TIL, Today I Learned 는 책 감상평을 쓰는 방법 중 하나 입니다.
- TIL 작성방법을 숙지한 후. TIL을 작성해주세요.
- TIL 책 감상평 예시 를 참고하세요.
슬랙에서 이야기를 나눠봐요!
- 책 읽으면서 궁금했던 것들! 다른 사람들은 어떻게 생각할까? 궁금하지 않았나요?
- 슬랙 채팅방에 놀러와서. 이야기를 자유롭게 해봐요 ;)
- 슬랙 채팅방 참여하기 #book-club 으로 오세요
제출방법
- 제출기간: 48시간! 토요일 오전 6시까지
- 업로드 하신 게시물 링크를 아래 제출하면 끝!
p 138
null을 반환하지 마라
...
이런코드 기반에서 짜왔다면 나쁘다고 느끼지 않을지도 모르겠다. 하지만 위 코드는 나쁘다! null을 반환하는 코드는 일거리를 늘릴 뿐만아니라 호출자에게 문제를 떠넘긴다. 누구하나라도 null확인을 빼먹는다면 애플리 케이션이 통제 불능에 빠질지도 모른다.
위코드에서 둘째 행에 null확인이 빠졌다는 사실을 눈치챘는가? 만약 persistentStore가 null이라면 실행 시 어떤 일이 벌어질까? nullPointerException이 발생하리라. 위쪽 어디선가 MullPointerException을 잡을 지도 모르고 아닐지도 모른다. 어느쪽이든 나쁘다.더보기항상 이런 처리를 내가 직접 해주고 막아줬다고 자부해왔다.
하지만 오늘 이 코드를 보고나서 다시 만들었던 '알고리당'이라는 서비스를 확인하니 백엔드는 4개이상의 null 이 리턴될 수 있는 구조로 설계되었다.
물론 혼자개발하고 운영하던 서비스였기 때문에 크게 지장은 없었다. 이정도면 정상이지머 라고 스팩을 혼자 지정할 수 있었고 기억하면 됬다. 하지만 이제 함께 개발하는 개발자가 되어 class101 에서 새로운 서비스를 설계 개발하고 있는 만큼 이런 설계는 지양해야할 프로그램으로 확 다가왔다.
'책 정리 > Clean Code' 카테고리의 다른 글
[clean code]10일차 (0) 2022.05.12 [clean code] 9일차 (0) 2022.05.08 [clean code] 7일차 (0) 2022.05.04 [clean code] 6일차 (0) 2022.05.03 [clean code] 5일차 (0) 2022.05.02