[클린코드] 오류처리

skayjays·2022년 2월 6일
0

클린코드

목록 보기
4/5

오류 코드보다 예외를 사용하라

  • 오류코드를 사용하지 않으면 호출자 코드가 복잡해진다.
  • 예외를 사용하면 호출자 코드가 깔끔해진다.
  • 에러부분과 본문이 분리되어 관리가 된다,

Try-Catch-Finally 문부터 작성하라

  • try블록은 트랜잭션과 비슷하다.
  • 예외 유형을 좁혀서 관리한다. Exception -> FileNotFooundException

미확인 예외를 사용하라

  • 확인된 예외란 메서드가 반환할 모든 예외를 열거하는 방법
  • 확인된 예외는 OCP를 위반한다.
    • 함수가 연쇄적으로 있을때 최하단 함수에 예외를 추가하면 상위 함수 모두에 변경이 일어난다.

예외에 의미를 제공하라

  • 실패한 연산이름과 실패 유형도 같이 언급한다.

호출자를 고려해 예외 클래스를 정의하라

  • 오류를 정의할때 프로그래머에게 가장 중요한 관심사는 오류를 잡아내는 방법이 되어야 한다.
  • Wrapper class를 활용해 오류를 단순화 한다.

정상 흐름을 정의하라

  • SPECIAL CASE PATTERN을 활용해 클라이언트 코드가 특수상황을 처리할 필요가 없게 만든다.
  • 클래스나 객체가 예외적인 상황을 캡슐화해서 처리한다.

null을 반환하지 마라

  • null을 반환하면 호출자에게 일거리를 늘릴 뿐만 아니라 호출자에게 문제를 떠넘긴다.
  • null을 던지고 싶은 경우 예외를 던지거나 특수사례 패턴을 활용한다.

null을 전달하지 마라

  • assert 문을 활용한다.

정리

이번 장을 읽으면서 그동안 오류 처리의 중요성에 대해 한 번 더 생각하게 되었다. 항상 개발을 하다 보면 오류 처리는 크게 신경 쓰지 않고 진행을 하게 되고 그러다 보면 시스템 안정성과 완성도가 낮아졌던 경험을 많이 했었다. 앞으로는 예외 블록을 잘 활용해 오류 처리에 신경 쓰고 미확인 예외, null 사용하지 않기 등을 활용해 품질 좋은 소프트웨어 개발을 해야겠다.

profile
기초를 탄탄하게

0개의 댓글