TIL 07. 오류 처리

오늘 TIL 3줄 요약

  • Try - Catch - Finally 문부터 작성하라 (132p) -> 예외 던지기부터 시작하라.
  • 호출자를 고려해 예외 클래스를 정의하라. (135p)
  • null을 반환하는 곳이 있을 경우, 예외를 던지거나 특수 사례 객체를 반환하게 해라 (139p)

TIL (Today I Learned) 날짜

2022.05.05

오늘 읽은 범위

7장. 오류 처리

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

  • 오류 처리의 시작은 강제로 예외를 일으키는 테스트 케이스를 작성한 후 테스트를 통과하게 코드를 작성하는 것으로부터 시작해라. (133p)

  • 확인된 오류가(Checked Exception) 치르는 비용은 OCP를 위반할 수 있다는 것을 기억해야 한다. (134p) 상위 단계에서 던지는 확인된 예외를 던지게 될 경우, 다음과 같이 예외 처리를 해야 한다..

    (1) catch 블록에서 처리

    (2) 선언부에 throw 절을 추가

    결과적으로 하위 단계의 선언부에 throw 절을 포함하게 되거나, throws 경로에 위치하는 모든 하위 함수가 catch 블록으로 동일한 예외를 처리해야 하므로, 캡슐화가 깨지게 된다.


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

  • 나만의 핵심 한줄 - 오류 처리를 프로그램 논리와 분리하면 독립적인 추론이 가능해 진다. (142p) 프로그램의 흐름이 안 끊기게, 그리고 안정성을 보장할 수 있게 오류 처리를 해야 한다는 내용에 적극 동의한다. 오류를 독립적인 사안으로 처리하게 하기 위해선 책의 내용 중 아래의 내용은 필수로 지켜야 한다 생각했고, 두고두고 기억하기 위해 정리해 본다.
    (1) 호출자를 고려해 예외 클래스를 정의하라.
    (2) 예외에 의미를 제공하라.
    (3) null을 반환, 전달하지 마라.