[클린코드] 7장 오류처리

JUN·2024년 8월 19일
0

클린코드

목록 보기
7/14

깨끗한 코드와 오류 처리의 중요성

  • 오류 처리는 프로그램의 필수 요소이며, 입력 오류나 디바이스 실패 등 예기치 못한 상황을 다루기 위해 필수적이다.
  • 깨끗한 코드는 오류 처리를 적절히 분리하여 프로그램의 논리를 쉽게 이해할 수 있도록 해야 한다.

예외를 사용한 오류 처리

  • 예외를 지원하지 않는 언어는 오류 플래그나 오류 코드를 반환하는 방법을 사용했다.
  • 예외를 사용하면 호출자 코드가 깔끔해지고, 오류 처리와 프로그램 논리를 분리할 수 있다.
  • try-catch-finally 구조를 사용해 예외 발생 시 프로그램 상태를 일관성 있게 유지한다.

미확인(unchecked) 예외 사용 권장

  • 확인된(checked) 예외는 OCP(Open Closed Principle)를 위반하며, 캡슐화를 깨뜨릴 수 있다.
  • 대부분의 경우 미확인(unchecked) 예외를 사용하는 것이 좋다.

예외 처리 기법

  • 의미 있는 예외를 던져 오류의 원인과 위치를 파악하기 쉽게 한다.
  • 외부 라이브러리를 사용할 때는 감싸기(wrapper) 클래스를 사용해 의존성을 줄이고 예외 처리를 간소화한다.
  • 특수 사례 패턴(Special Case Pattern)을 사용해 클라이언트 코드가 예외 상황을 직접 처리하지 않도록 한다.

null을 반환하지 말라

  • null을 반환하는 코드는 호출자에게 문제를 떠넘기며, NullPointerException을 유발할 수 있다.
  • null 대신 예외를 던지거나 빈 객체를 반환하는 것이 좋다.

null을 전달하지 말라

  • 메서드로 null을 전달하면 실행 오류가 발생할 수 있다.
  • null을 전달하지 않도록 금지하는 정책을 세우는 것이 좋다.
profile
순간은 기록하고 반복은 단순화하자 🚀

0개의 댓글