개발자 99% 커뮤니티에서 수다 떨어요!
TIL (Today I Learned)
▶오늘 읽은 범위
2장. 의미있는 이름
📑 정리본
의도를 분명히 밝혀라
의도가 분명하게 이름을 지어라 (p.22)
그릇된 정보는 피하라(p.24)
의미 있게 구분하라 (p.25)
발음하기 쉬운 이름을 사용하라 (p.27)
검색하기 쉬운 이름을 사용하라 (p.28)
인코디응ㄹ 피하라 (p.29)
자신의 기억력을 자랑하지 마라. 문자 하나만 사용한 변수 이름은 문제가 있다. (p.31)
똑똑한 프로그래머와 전문가 프로그래머 사이에서 나타나는 차이점 하나만 들자면, 전문가 프로그래머는 명료함이 최고라는 사실을 이해한다. 전문가 프로그래머는 자신의 능력을 좋은 방향으로 사용해 남들이 이해하는 코드를 내놓는다.(p.31)
클래스 이름과 객체 이름은 명사나 명사구가 적합하다. 동사는 사용하지 않는다 (p.32)
메서드 이름은 동사나 동사구가 적합하다 (p.32)
기발한 이름은 피하라. 재미난 이름보다 명료한 이름을 선택하라. (p.32)
한 개념에 한 단어를 사용하라. (p.33)
메서드 이름은 독자적이고 일관적이어야 한다. (p.33)
집중적인 탐구가 필요한 코드가 아니라 대충 훑어봐도 이해할 코드 작성이 목표다. 의미를 해독할 책임이 독자에게 있는 논문 모델이 아니라 의도를 밝힐 책임이 저자에게 있는 잡지모델이 바람직하다. (p.34)
불필요한 맥락을 없애라. 일반적으로는 짧은 이름이 긴 이름보다 좋다. 의미가 분명한 경우에 한해서다. 이름에 불필요한 맥락을 추가하지 않도록 주의한다 (p.37)
우리는 문장이나 문단처럼 읽히는 코드 아니면 적어도 표나 자료구조처럼 읽히는 코드를 짜는데만 집중해야 마땅하다. (p.38)
다른사람이 짠 코드를 손본다면 리팩터링 도구를 사용해 문제 해결 목적으로 이름을 개선하라
좋은 이름을 선택하려면 설명 능력이 뛰어나야 하고 문화적인 배경이 같아야 한다. 이것이 제이어렵다. 좋은 이름을 선택하는 능력은 기술, 비지니스, 관리 문제가아니라 교육 문제다. (p.38)
✔오늘 책을 읽은 소감
이제까지 내가 짜온 코드를 현재 클린코드의 규칙과 비교를해보면 처참한것 같다..
읽어보면 당연한 이야기지만 이러한 사소한 규칙이 협업에서 더 효율적인 생산을 도울수 있는것 같다.
❓궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
요즘 개발자사이에서 리팩토링이라는 단어가 유행인데 클린코드라는 책을 많이 읽지는 않았지만
조금은 감이 오는것같다. 앞으로 코드를 구현할때 조금이라도 더 신경써가면서 적용해봐야겠다.