[Clean Code] TIL (2022.03.04) 7장. 오류처리

다시보려고 쓰기·2022년 3월 4일
0

클린코드 (Clean Code)

목록 보기
8/10
post-thumbnail

TIL (Today I Learned)

2022.03.04

오늘 읽은 범위

7장. 오류처리


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


우아하고 고상하게 오류를 처리하는 기법과 고려사항 몇 가지

  • 오류코드보다 예외를 사용하라
  • Try-Catch-Finally 문부터 작성하라
  • 미확인(unchecked) 예외를 사용하라
  • 예외에 의미를 제공하라
  • 호출자를 고려해 예외 클래스를 정의하라
  • 정상 흐름을 정의하라
  • null을 반환하지 마라
  • null을 전달하지 마라

try블록에서 무슨 일이 생기든지 호출자가 기대하는 상태를 정의하기 쉬워진다. (p.132)
먼저 강제로 예외를 일으키는 테스트 케이스를 작성한 후 테스트를 통과하게 코드를 작성하는 방법을 권장한다. 그러면 자연스럽게 try 블록의 트랜젝션 범위부터 구현하게 되므로 범위 내에서 트랜잭션 본질을 유지하기 쉬워진다.
(p.133 Try-Catch-Finally 문부터 작성하라)

우리는 확인된 오류가 치르는 비용에 상응하는 이익을 제공하는지 따져봐야한다. 때로는 확인된 예외도 유용하다. 아주 중요한 라이브러리를 작성한다면 모든 예외를 잡아야 한다. 하지만 일반적인 애플리케이션은 의존성이라는 비용이 이익보다 크다.

(p.134-135 미확인 예외를 사용하라)

null을 반환하는 코드는 일거리를 늘릴 뿐만 아니라 호출자에게 문제를 떠넘긴다.
메서드에서 null을 반환하는 방식도 나쁘지만 메서드로 null을 전달하는 방식은 더 나쁘다.
(p.140)



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

코드의 깨끗함과 안정성 + 오류처리와 프로그램 논리 => 독립적 추론과 코드 유지보수성 향상



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


0개의 댓글