Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
TIL 7장 오류처리
#clean_code
2년 전
535


TIL (Today I Learned)

  • 2022-03-03

오늘 읽은 범위

  • 7장 오류처리

책에서 기억하고 싶은 내용을 써보세요.

  • (p.131) [오류 코드보다 예외를 사용하라] 그래서 오류가 발생하면 예외를 던지는 편이 낫다. 그러면 호출자 코드가 더 깔끔해진다. 논리가 오류 처리 코드와 뒤섞이지 않으니까.

  • (p.135) [예외에 의미를 제공하라] 자바는 모든 예외에 호출 스택을 제공한다. 하지만 실패한 코드의 의도를 파악하려면 호출 스택만으로 부족하다. 오류 메시지에 정보를 담아 예외와 함께 던진다.

  • (p.138) [null을 반환하지 마라] null을 반환하는 코드는 일거리를 늘릴 뿐만 아니라 호출자에게 문제를 떠넘긴다. 누구 하나라도 null 확인을 빼먹는다면 애플리케이션이 통제 불능에 빠질지도 모른다. (...) 메서드에서 null을 반환하고픈 유혹이 든다면 그 대신 예외를 던지거나 특수 사례 객체를 반환한다.

  • (p.140) [null을 전달하지 마라] 메서드에서 null을 반환하는 방식도 나쁘지만 메서드로 null을 전달하는 방식은 더 나쁘다. (...) 대다수 프로그래밍 언어는 호출자가 실수로 넘기는 null을 적절히 처리하는 방법이 없다. 그렇다면 애초에 null을 넘기지 못하도록 금지하는 정책이 합리적이다.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • (인용) [결론] 깨끗한 코드는 읽기도 좋아야 하지만 안정성도 높아야 한다. 이 둘은 상충하는 목표가 아니다.

  • null 과 관련하여 테스트 코드를 작성해보는 연습을 많이 해봐야겠다.

  • 다양한 프로그래밍 언어들이 null 을 대하고 처리하는 방법에 대해 알아보아야 겠다.

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  • 특수 사례 객체, 특수 사례 패턴(Special Case Pattern)

  • Null Object Pattern