개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
함수를 만드는 첫째 규칙은 '작게!'다.
함수를 만드는 둘째 규칙은 '더 작게!'다.
함수는 100줄을 넘어서는 안 된다. 아니 20줄도 길다.
TIL (Today I Learned) 날짜
2022. 04.27
2022.04.28
오늘 읽은 범위
3장. 함수
책에서 기억하고 싶은 내용을 써보세요.
중첩 구조가 생길만큼 함수가 커져서는 안 된다. 그러므로 함수에서 들여쓰기 수준은 1단이나 2단을 넘어서면 안된다.
함수는 한 가지를 해야 한다. 그 한 가지를 잘 해야 한다. 그 한 가지만을 해야 한다.
함수는 간단한 TO 문단으로 기술할 수 있다.
단순히 다른 표현이 아니라 의미 있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 하는 셈이다.
이름이 길어도 괜찮다. 겁먹을 필요없다. 길고 서술적인 이름이 짧고 어려운 이름보다 좋다.
길고 서술적인 이름이 길고 서술적인 주석보다 좋다.
이름을 정하느라 시간을 들여도 괜찮다. 이런저런 이름을 넣어 코드를 읽어보면 더 좋다.
함수에서 이상적인 인수 개수는 0개(무항)다.
최선은 입력 인수가 없는 경우이며, 차선은 입력 인수가 1개뿐인 경우다.
플래그 인수는 추하다. (플래그가 참이면 이걸 하고 거짓이면 저걸 한다는 말이니까!)
객체를 생성해 인수를 줄이는 방법이 눈속임이라 여겨질지 모르지만 그렇지 않다.
함수 이름에 인수 이름을 넣는다. 예를 들어 assertEquals 보다 assertExpectedEqualsActual 이 더 좋다. 그러면 인수 순서를 기억할 필요가 없어진다.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
변수, 함수 이름을 생각하느라 시간을 보내다보면 로직을 생각하는 시간을 빼앗긴다는 마음에 조급함이 생기곤 했는데..클린 코드를 위해서라면 이름 짓는 시간을 아까워하면 안되겠다는 생각을 하게되었습니다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
변환 함수에서 출력 인수를 사용하면 혼란을 일으킨다..?
오늘 읽은 다른사람의 TIL