독서일지/클린 코드

클린 코드 독서일지 - Day 6

Sadie Kim 2023. 10. 31. 00:39

오류 코드보다 예외 사용하기

오류 코드를 반환하면 호출자가 오류 코드를 처리해야 한다.
But 예외를 사용하면 오류 처리 코드가 원래 코드에서 분리되므로 코드가 깔끔해진다.

Try/Catch 블록 뽑아내기

try/catch는 추하므로 별도 함수로 뽑아내자.
오류 처리도 한 가지 작업!

Error.java 의존성 자석

의존성 자석 : 다른 클래스에서 많이 사용해서 만약 변경된다면, 이를 사용하는 클래스 전부를 다시 컴파일하고 배치해야 하는 값
-> 오류 코드를 반환한다는 이야기는 오류 코드를 정의하여 의존성 자석을 만들어낸다는 것이므로, 예외를 사용하자.

반복하지 마라!

중복은 소프트웨어의 모든 악의 근원이다. 수정이 어렵고 오류 발생 확률도 높아진다.

구조적 프로그래밍

다익스트라는 모든 함수와 함수 안의 모든 블록에 입구와 출구가 하나만 존재해야 한다고 했다.
그러나 이는 함수가 작다면 별 이익을 제공하지 못하므로, 함수를 작게 만들면 return, break, continue를 여러 번 사용해도 괜찮다.

함수를 어떻게 짜죠?

함수는 글짓기처럼 짠다.
먼저 길고 어수선한 초안을 짠다. 이후 단위 테스트 케이스를 만들고, 코드를 다듬고 이름을 바꾸며 리팩토링한다. 리팩토링하는 과정에서 단위 테스트 케이스를 모두 통과하도록 한다. 최종적으로는 클린 코드 함수가 얻어진다.
처음부터 탁월한 코드를 짜내는 사람은 없다.

결론

함수는 시스템이라는 이야기를 풀어가는 역할을 한다.
분명하고 정확한 언어로 만들어야 시스템을 잘 풀 수 있다.