개발자 99% 커뮤니티에서 수다 떨어요!
TIL (Today I Learned)
2022.02.26
오늘 읽은 범위
4장 주석
책에서 기억하고 싶은 내용을 써보세요.
프로그래밍 언어 자체가 표현력이 풍부하다면, 아니 우리에게 프로그래밍 언어를 치밀하게 사용해 의도를 표현할 능력이 있다면, 주석은 거의 필요하지 않으리라. 아니, 전혀 필요하지 않으리라. (p68)
주석이 코드에서 분리되어 점점 더 부정확한 고아로 벼하는 사례가 너무도 흔하다. (p68)
모듈을 짜고 보니 짜임새가 엉망이고 알아먹기 어렵다. "이런! 주석을 달아야겠다!" 아니다! 코드를 정리해야 한다! 자신이 저지른 난장판을 주석으로 설명하려 애쓰는 대신에 그 난장판을 깨끗이 치우는 데 시간을 보내라! (p69)
모든 함수에 Javadocs를 달거나 모든 변수에 주석을 달아야 한다는 규칙은 어리석기 그지없다. (p80)
주석으로 처리된 코드는 다른 사람들이 지우기를 주저한다. 이유가 있어 남겨놓았으리라고, 중요하니까 지우면 안 된다고 생각한다. 그래서 질 나쁜 와인병 바닥에 앙금이 쌓이듯 쓸모 없는 코드가 점차 쌓여간다. (p86)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
모든 함수에는 의무적으로 주석을 달았었다. 그렇게 하라는 얘기를 듣기도 하고, 이전 함수들이 그렇게 되어있으니까 함수의 역할을 적고, 인수들에 대해서도 적었다. 하지만 클린 코드에서는 의무적인 주석은 필요없는 주석이라고 한다. 나는 이 주석으로 인해 도움을 받은 적이 없었나? 도움을 받았을지라도 저자의 말대로 코드로 설명하지 못했기 때문에 함수 이름이 명확하지 않기 때문이었을까?
내가 짠 코드가 아닌데 수정이 필요할 때 잠시 주석해 놓는 그 버릇은 꼭 고쳐야겠다. 남겨놓지 말자.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
#region, #endregion 주석은 아니지만 관련된 함수끼리 그룹으로 묶는 것은 좋은 방법일지 아닐지 궁금하다.