노개북(노마드코더 Challenges)-클린코드 DAY8

mingki·2022년 5월 6일
0

7장.오류 처리

상당수 코드 기반은 전적으로 오류 처리 코드에 좌우된다.
오류 처리 코드로 인해 프로그램 논리를 이해가기 어려워진다면 깨끗한 코드라 부르기 어렵다

❤️ 오류처리시 주의사항

  1. 오류 코드보다 예외를 사용하라 : 논리와 오류 처리 코드가 뒤섞이지 않도록 오류가 발생하면 예외를 던지는 것이 낫다 -> 호출자 코드가 깔끔해 진다
  2. Try - Catch - Finally 문부터 작성하라 : try블록은 트랜잭션과 비슷하다 try 블록에서 무슨 일이 생기든지 catch 블록은 프로그램 상태를 일관성 있게 유지해야 한다 그러므로 예외 발생시 Try - Catch - Finally 문으로 시작하는 것이 좋다 -> try 블록에서 무슨 일이 생기든 호출자가 기대하는 상태를 정의하기 쉬워진다
  3. 예외에 의미를 제공하라 : 예외를 던질 때 전후 상황을 충분히 덧붙힌다 -> 오류가 발생한 원인과 위치를 찾기가 쉬워진다
  4. null을 반환하지 마라 : null을 반환한다면 null확인이 너무많아 문제가 된다 -> 외부 API가 null을 반환 한다면 감싸기 메서드를 구현해 예외를 던지거나 특수 사례 객체를 반환하는 방식을 고려한다
  5. null을 전달하지 마라 : 대다수 프로그래밍 언어는 호출자가 실수로 넘기는 null을 적절히 처리하는 방법이 없다 -> 애초에 null을 넘기지 못하도록 금지하는 것이 좋다
  • 결론 : 깨끗한 코드는 읽기도 좋아야 하지만 안정성도 높아야 한다 -> 오류 처리를 프로그램 논리와 분리하면 독립적인 추론이 가능해지며 코드 유지보수성도 크게 높아진다

‼️ 나의 생각

예외처리시 반환된 값이 null일 경우의 조건문을 많이 사용한것이 생각났다. 책에서 말하고 있듯이 null값을 반환받거나 전달을 하게되면 예상치 못한곳에서 null예외가 발생한다.
애초에 반환받은 값, 전달할 값에 있는 null 값을 처리하고 다음 코드를 진행 해야겠다

profile
비전공초보개발자

0개의 댓글