목록Case Study/How to (12)
IT is Smart
이름이 너무 기발하면 비슷한 유머코드의 사람만, 그리고 농담을 기억하는 동안만 이름을 기억한다. 재미난 이름보다 명료한 이름을 선택하라.의도를 분명하고 솔직하게 표현하라. ※ 로버트 C 마틴의 클린 코드 참고
postPayment, deletePage, save 등이 좋은 예이다. ※ 로버트 C 마틴의 클린 코드 참고
Customer, WikiPage, Account 등이 좋은 예이다. 동사는 사용하지 않는다. ※ 로버트 C 마틴의 클린 코드 참고
문자 하나만 사용하는 변수명은 문제가 있다. 루프에서 반복 횟수를 세는 변수 i, j, k는 괜찮다. 단, 루프 범위가 아주 작고 다른 이름과 충돌하지 않을 때만 괜찮다. 루프에서 반복 횟수 변수는 전통적으로 한 글자를 사용하기 때문이다.그 외에는 대부분 적절하지 못하다. ※ 로버트 C 마틴의 클린 코드 참고
과거에는 컴파일러가 타입을 점검하지 않아서 타입을 확인할 수 있도록 이름에 타입을 포함했었다.하지만 요즘은 IDE가 컴파일하지 않고도 타입 오류를 확인해 주기 때문에 변수, 함수, 클래스 이름에 타입을 함께 포함할 필요가 없다.이제는 헝카리식 표기법이나 기타 인코딩 방식이 오히려 방해가 될 뿐이다. 변수, 함수, 클래스 이름이나 타입을 바꾸기가 어려워지며, 읽기도 어려워진다. ※ 로버트 C 마틴의 클린 코드 참고
문자 하나를 사용하는 이름과 상수는 코드에서 쉽게 눈에 띄지 않는다. MAX_CLASSES_PER_STUDENT는 쉽게 찾을 수 있지만, 숫자 7은 은근히 까다롭다. 7이 들어가는 파일 이름이나 수식이 모두 검색되기 때문읻. 검색은 되지만 7을 사용한 의도가 다를 수도 있다. 상수는 여러 자리 숫자이고 누군가 상수 내 숫자 위치를 바꿨다면 문제는 더 심각해진다. 긴 이름이 짧은 이름보다 좋다. 검색하기 쉬운 이름이 상수보다 좋다. 개인적으로는 간단한 메서드에서 로컬 변수만 한 문자를 사용한다. 이름 길이는 범위 크기에 비례해야 한다. ※ 로버트 C 마틴의 클린 코드 참고