(클린코드) 7장. 오류 처리

Posted by Eun JongHyeok on January 28, 2025

오늘 TIL 3줄 요약

  • 오류 코드보다 예외로 사용해야 한다.
  • 외부 API에서 오는 예외는 Wrapper로 감싸서 처리한다.
  • null은 최대한 전달하지도 반환하지 않도록 한다.

TIL (Today I Learned) 날짜

  • 2025.01.29

오늘 읽은 범위

  • 7장. 오류 처리

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

  • 오류 코드를 사용하면 함수를 호출하고 바로 오류를 확인해야 합니다.
    이렇게 될 경우 메인 로직(정상 케이스)과 오류 처리 코드가 뒤섞이게 됩니다.

  • 예외에 오류 메시지를 같이 던져 실패한 연산, 유형 등을 알 수 있도록 해야합니다.

  • 호출자를 고려하여 필요한 예외 클래스를 따로 정의해서 넘겨주는게 좋습니다.

  • 외부 API를 사용할 때는 Wrapper 클래스로 감싸주는게 좋습니다.

  • 클래스나 객체가 예외적인 상황을 캡슐화해서 처리하게 하면 클라이언트 코드에서 예외 처리를 할 필요가 없게됩니다.
    이를 특수 사례 패턴이라 부릅니다.

  • null을 반환하는 것을 지양해야 합니다.

  • 사용하는 외부 API가 null을 반환할 경우 메서드로 감싸서 예외를 던지거나 특수 사례 객체를 반환하도록 합니다.
    예시로 리스트를 반환하는 경우 null 대신 빈 리스트를 반환하도록 할 수 있습니다.

  • null을 전달하는 것을 지양해야 합니다.

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

  • 주로 사용하는 언어(C#, kotlin)에서는 확인된 예외(Checked Execption)를 지원하지 않기 때문에 확인된 예외가 무슨 말인지 따로 찾아보기 전까지 이해하기 힘들었던게 아쉬웠네요.

  • kotlin 같은 경우 null 처리를 언어차원에서 지원해주기 때문에 관련된 패턴을 따로 정리하는게 좋아보입니다.

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

  • 오류 코드보다 예외를 사용하라고 하지만 API 개발에서 오류 코드를 사용하는 경우에는 어떻게 처리해야 할지 어느 레벨까지 예외를 사용하고 어느 레벨 부터는 오류 코드를 전달해야할지 고민이 됩니다.

오늘 읽은 다른사람의 TIL


nomadcoder
study
노마드코더
노개북
개발자북클럽

← Previous Post Next Post