개발자에게 가장 중요한 덕목에는 들어가지 않겠지만, 그래도 필요한 덕목 10가지 중에는 읽기, 쓰기가 들어간다.

거창하게 techincal writing이 아니더라도, 독해력은 간접적으로 programming에 꽤 많은 역할을 하고 있다고 생각한다. (programming도 결국 language로 하는 거라니까?)

 

그리고 많은 초보 개발자들이 "난 뭐 그 정도는 다들 알고 있는데"라고 하면서도 실천을 못하는 게 이름 짓기를 잘 하는 것이다.

변수, 함수, 하다못해 레이블을 하나 적더라도 이름을 지어야 한다.

이름 짓는 방법이야 이미 많고, 장점과 적용해야 하는 경우가 분명한데, 가장 중요한 건 "기준을 정하고 그 기준을 지키는 것"이다.

물론 여기의 기준에는 표기법도 포함되는 건 당연하다. 어디서는 camel case 적용하고, 또 다른 곳에선 hungarian 쓰고, 또 어디서는 섞어 쓰는 건 전체적인 일관성을 떨어뜨리고, 통일된 약속을 무너뜨려 결과적으로는 code를 읽고 해석하는 데 더 많은 자원이 들어간다.

 

그 중에서도 가장 기본적인 건, 변수는 명사로 짓고, 함수는 동사로 지어야 한다.

그리고 반드시 그 이름은 내용이 가리키는 바를 명확하게 명시해야 한다.

게다가 영어가 모국어가 아니니까 그렇다 쳐도, 그렇다고 요즘같은 시대에 internet에서 click 몇 번 하면 한영사전이 나오는데, "gogaek-bunho"라는 식으로 적혀있는 걸 보면.....

 

달력과 관련된 UI component를 만드는데, 처음에는 "padding"이라는 변수를 선언해두고, 나중에는 padding 계산이 날짜에 따라 바뀌는 code가 올라왔다.

자세히 보니, 그 달의 1일이 무슨 요일인지를 이 변수에 넣어두고, 이걸 이용해서 매월 "1"일을 왼쪽에서 빈 칸을 줘서 사용하는 것이다.

좀 양보해서 정확하게 그 용도로만 쓴다면야 상관 없을텐데, 이 변수의 값이 사실상 "그 달 1일의 요일 값"을 가지고 있다보니, 다른 계산들도 이 변수 값에 의지하게 되고, UI와 관계업는 내부 계산에서도 이 값을 의지하는 code까지 등장한다.

그럴 바엔 변수 이름을 애초에 바꾸는 게 맞는데, 처음 이름을 저렇게 지어놨으니 바꾸기 싫어하면.........

 

아무튼, 기초니까 이거 쉽네 하고 넘어가는 사람들이 꽤 많은데, 기초니까 잘 지키는 모습을 봤으면 하는 항목 중의 하나이다.



Trackbacks  | Comments