개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
TIL (Today I Learned) 날짜
2022. 01. 28
오늘 읽은 범위
2장. 의미 있는 이름
책에서 기억하고 싶은 내용을 써보세요.
이름을 잘 짓는 간단한 규칙들
의도를 분명히 밝혀라(변수나 함수 그리고 클래스의 존재 이유를 이름으로써 의도를 밝혀라)
그릇된 정보를 피하라(hp같은 여러 의미로 쓰이는 단어를 사용하는 것을 피하라. 서로 흡사한 이름을 사용하지 않도록 주의하라)
의미 있게 구분하라(연속적인 숫자를 덧붙인 이름(a1, a2, a3..., aN)이나 불용어를 추가한 이름 역시 아무런 정보를 제공하지 못한다.)
검색하기 쉬운 이름을 사용하라(긴 이름이 짧은 이름보다 좋다. 검색하기 쉬운 이름이 상수보다 좋다. 이름 길이는 범위 크기에 비례해야 한다.)
자신의 기억력을 자랑하지 마라(명료함은이 최고)
클래스 이름과 객체 이름은 명사나 명사구가 적합하다.
메서드 이름은 동사나 동사구가 적합하다.
기발한 이름은 피하라(재미난 이름보다 명료한 이름을 선택하라)
한 개념에 한 단어를 사용하라(일관성 있는 어휘를 써라)
해법 영역에서 가져온 이름을 사용하라(전산 용어, 알고리즘 이름, 패턴 이름, 수학 용어 등 기술 개념에는 기술 이름이 가장 적합한 선택이다)
문제 영역에서 가져온 이름을 사용하라(적절한 용어가 없다면 문제 영역에서 이름을 가져온다.)
의미 있는 맥락을 추가하라.(firstName, lastName -> addrFirstName, addrLastName로 addr라는 접두어를 추가해 맥락을 분명히 해라)
불필요한 맥락을 없애라(특정 단어가 들어간 프로그램을 짠다고 모든 클래스 이름을 특정 단어로 시작하겠다는 생각은 바람직하지 않다.)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
어느 글에서 봤던 건데 개발자가 가장 어려워 하는 일이 '이름 짓기'라는 걸 본 적이 있다. 그냥 대충 이름 컨벤션에 맞춰 지으면 되는거 아니야? 창의성이 부족한가 라고 생각했는데 수 많은 변수, 함수, 클래스 들을 만들어 내는 개발자가 되었다고 생각해봤을 때 점점 마땅한 이름을 정하는데 꽤나 괴로울 수 있을 거 같았다. 그런 의미에서 이번 장에선 먼저 이런 고통을 경험해보고 더 나은 방향으로 해결책을 던져주었던 장이었다. 텍스트로만 읽고 지나치지 말고 기억하고 몸으로 체득하고 직접 고민해보는 시간을 많이 가져야 비로소 2장 의미 있는 이름을 읽었다고 할 수 있을 거 같다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
간단한 자기소개