개발자 99% 커뮤니티에서 수다 떨어요!
TIL (Today I Learned)
2020.02.20
오늘 읽은 범위
2장. 의미 있는 이름
책에서 기억하고 싶은 내용을 써보세요.
의도를 분명히 밝혀라
이름으로 존재이유, 수행 기능, 사용방법을 알 수 있어야 한다.
문제는 코드의 단순성이 아니라 코드의 함축성이다.
그릇된 정보를 피하라
널리 쓰이는 의미 있는 단어를 다른 의미로 사용하지 않기
컨테이너가 실제 List가 아닌데 List로 명명하지 않기
서로 흡사한 이름을 사용하지 않기
유사한 개념은 유사한 표기법 사용. 일관성이 떨어지는 표기법하지 않기
l,1 ,O,0 과 같이 혼돈이 오는 알파벳 주의하기
의미있게 구분하라
읽는 사람이 차이를 알도록 이름을 지어라
발음하기 쉬운 이름을 사용하라
발음하기 어려운 이름은 토론하기도 어렵다
검색하기 쉬운 이름을 사용하라
이름 길이는 범위 크기에 비례해야 한다.
인코딩을 피하라
헝가리식 표기법
멤버 변수 접두어
인터페이스 클래스와 구현 클래스
자신의 기억력을 자랑하지 마라
클래스이름
명사나 명사구 사용
메서드 이름
동사나 동사구 사용
자바빈 표준에 따라 값 앞에 get,set is를 붙임
생성자를 중복정의 할 떄는 정적 팩토리 메서드를 사용
기발한 이름은 피하라
한 개념에 한 단어를 사용하라
말장난을 하지마라
한 단어를 두 가지 목적으로 사용하지 마라
해법 영역에서 가져온 이름을 사용하라
문제 영역에서 가져온 이름을 사용하라
적절한 프로그래머 용어가 없다면 문제 영역에서 이름을 가져온다.
불필요한 맥락을 없애라
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
이름만으로 존재 이유, 수행 기능, 사용방법을 알 수 있도록 네이밍을 고민해야 겠다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.