[TIL] [2024.10.22] Clean Code

김동진김동진
2 min read

#노개북 #노마드코더 #개발자북클럽

오늘 읽은 범위 : 7장. 오류 처리

💡
Today I Learned
  • 먼저 강제로 예외를 일으키는 테스트 케이스를 작성한 후 테스트를 통과하게 코드를 작성하는 방법을 권장한다.

  • 확인된 오류가 치르는 비용에 상응하는 이익을 제공하는지 따져봐야 한다.

  • 확인된 예외는 OCP(Open Closed Priciple)를 위반한다.

    • 하위 단계에서 코드를 변경하면 상위 단계 메서드 선언부를 전부 고쳐야한다.
  • 로깅 기능을 사용하면 오류를 기록하도록 충분한 정보를 넘겨준다.

  • 오류를 정의할 때 가장 중요한 관심사는 오류를 잡아내는 방법이 되어야 한다.

💡
책에서 기억하고 싶은 내용을 써보세요.
  • 외부 API를 사용할 때는 Wrapper 기법이 최선이다. 외부 API를 감싸면 외부 라이브러리와 프로그램 사이 의존성이 크게 줄어든다.

  • 클래스를 만들거나 객체를 조작해 특수사례를 처리하면 예외적인 상황을 처리할 필요가 없어진다. 이를 특수 사례 패턴이라고 한다.

  • null을 전달,반환하지 마라, null을 반환하고픈 유혹이 든다면 그대신 예외를 던지거나 특수 사례 객체를 반환한다.

  • 대다수 프로그래밍 언어는 호출자가 실수로 넘기는 null을 적절히 처리하는 방법이 없다. 그렇다면 애초에 null을 넘기지 못하도록 금지하는 정책이 합리적이다.

💡
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
  • 언제나 예외를 처리할 때, 두루뭉실하고 확신에 차지 못한 마음으로 이게 최선인가? 라는 생각을 하고는 했다. 열심히 여러 케이스를 고려하여 작성을 했지만 답을 내리지 못해 내가 작성한 코드를 믿지 못하고 검토를 요청하곤 했다. 하지만 언제나 의존하면서 개발할 수는 없는 법. 금일 읽은 챕터는 스스로 기준을 세우고 내가 작성한 코드에 믿음을, 주니어 개발자가 세 발 자전거에서 두 발 자전거를 탈 수 있게 만들어준 계기가 되었다.
💡
나만의 공부 노하우

0
Subscribe to my newsletter

Read articles from 김동진 directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

김동진
김동진