💪 Study/📚 노마드코더 북클럽
노개북 클린코드 #10
김_수댕
2024. 5. 16. 02:25
반응형
TIL (Today I Learned) 날짜
2024년 05월 15일 수요일
오늘 읽은 범위
7장. 오류 처리
책에서 기억하고 싶은 내용
7장. 오류 처리
- 오류 처리는 프로그램에 반드시 필요한 요소 중 하나다. 뭐가 잘못될 가능성은 늘 존재한다.
- 오류 코드보다 예외를 사용하라
- 가독성 + 코드 품질 모두 오류 코드보다 예외가 낫다.
- try-catch-finally문부터 작성하라
- try 블록 안의 코드를 실행하면 어느 시점에서든 실행이 중단되고 catch 블록으로 들어간다.
- 코드가 예외를 던지면 테스트가 성공한다. 테스트가 성공해야 리팩터링이 가능하다.
- 강제로 예외를 일으키는 테스트 케이스를 작성 후 테스트를 통과하도록 코드를 작성한다.
- 미확인 예외를 사용하라
- 확인된 예외는 OCP(Open Closed Principle)을 위반한다.
- 하위 단계에서 코드를 수정하면 상위 단계 메서드 선언부를 수정해야 한다.
- 예외에 의미를 제공하라
- 예외를 던질 때 전후 상황을 충분히 덧붙인다.
- 오류 메시지에 정보를 담아 예외와 함께 던진다. 실패한 연산 이름과 유형도 언급한다.
- 호출자를 고려해 예외 클래스를 정의하라
- 오류를 정의할 때 가장 중요한 관심사는 오류를 잡아내는 방법이 되어야 한다.
- 한 예외는 잡아내고 다른 예외는 무시해도 된다면 여러 예외 클래스를 사용해도 된다.
- 정상 흐름을 정의하라
- null을 반환하지 마라
- 매서드에서 null을 반환하는 대신 예외를 던지거나 특수 사례 객체를 반환한다.
- 사용하는 API가 null을 반환하면 감싸기 메서드로 구현해 예외를 던지거나 특수 사례 객체를 반환한다.
- null을 전달하지 마라
- 정상적인 인수로 null을 기대하는 API가 아니라면 메서드로 null을 전하는 코드는 최대한 피한다.
- 인수로 null이 넘어오는 건 코드에 문제가 있다는 말
- 깨끗한 코드는 읽기도 좋아야 하지만 안정성도 높아야 한다.
- 오류 처리를 프로그램 논리와 분리하면 독립적인 추론이 가능해지며 코드 유지보수성도 크게 높아진다.
공부법을 서로 공유해요.
정말... 아직도 모르겠다...
잘하는 사람도 너무 많고 공부할 것도 너무 많아서 하루 울고 하루 공부하고 있는 중...
어쩌겠어... 내가 선택한 길이다... 악으로 깡으로 버텨...
계속하다 보면 언젠가는 취업하고... 나름 저 할 줄 아는데요도 할 수 있겠지...
읽은 소감 + 떠오르는 생각
오류 처리에 있어서도 클린 코드를 적용할 수 있다는 게 신기했다.
궁금한 내용 + 이해되지 않는 내용
반응형