개발자가 되고 싶은 준개발자

[Clean Code] 좋은 변수명이란? 본문

Clean Code: 좋은 코드란?

[Clean Code] 좋은 변수명이란?

준개발자 2020. 10. 16. 12:18

의도를 분명히 밝히기

int d; // 경과 시간(단위: 날짜)

위의 예시처럼 주석이 따로 필요하다면 변수명에 의도를 충분히 담지 못했다는 뜻이다. 아래처럼 변수명 자체로 그 용도를 알 수 있도록 작성해야 한다.

int elapsedTimeInDays;

의도를 분명히 밝힐 수 있다면 이름이 길어도 괜찮다. 길고 서술적인 이름이 짧고 어려운 이름보다 좋다.


그릇된 정보를 피하기

다른 프로그래머가 읽었을 때 오해할 수 있는 내용을 코드에 남기면 안 된다. 예로 accountList라는 이름은 계좌리스트가 List로 구현되었다는 오해를 낳을 수 있으므로 accountGroup처럼 명명하는 것이 좋다.


의미 있게 구분하라

다른 사람이 두 변수명을 읽었을때, 다른 정보 없이 두 변수명이 담는 정보를 알아차릴 수 있도록 명명하는 것이 좋다. 


 

검색하기 쉬운 이름으로 지어라

개발을 하다보면 종종 특정 변수명을 검색할 일이 생기는데, 이 때 오직 특정 변수명만이 검색될 수 있도록 한다면 개발이 더 수월할 것이다.


자신의 기억력을 믿지 말기

실제 개념으로 한번 더 변환하는 과정을 거쳐야 하므로 한 글자짜리 이름을 좋지 않다.(단, 루프의 반복 횟수를 세는 용도로는 사용해도 괜찮다.)


출처

로버트 C 마틴 저, 「Clean Code: 애자일 소트트웨어 장인 정신」, 박재호, 이해영 옮김, 인사이트, 2013.