[mjt] 변수를 잘 작성하는 방법이란 무엇일까
변수를 잘 작성하는 방법이란 무엇일까
모던 자바스크립트 튜토리얼을 공부 중 변수와 상수 - 변수 명명 규칙
에서 문득 내가 변수를 잘 작성하고 있을까? 그렇다면 잘 작성하는 방법이란건 무엇이 있을까? 가이드가 제공되어있다면 어디에? 뜬금없이 생각이 들었다. 이러한 생각이 들었다는건 지금까지 많이 듣긴 했지만, 직접 찾아보지 않았기 때문일거다…. 이왕 이렇게 된거 한번 정리해봤다.
좋은 변수 이름을 사용해야 하는 이유?
먼저 표기법
에 대해 생각해보면, 가장 많이 사용하던 것은 camelCase
였던 것 같다. 다른 표기법은 종종 보았지만 이는 팀의 컨벤션에 따라 달라질 것 같아서 크게 생각은 안하고 있었다. 하지만 표기법과 변수의 이름은 코드의 `가독성`, `유지보수성`에 큰 영향을 미친다.
이와 같이 규칙이 생겨난 이유는 역시 같이 일하기 때문이 아닐까 싶다. 혼자 개발할꺼면 뭐 규칙이 뭔 소용이 있나 자기만 잘 이해하면 될 것이지~ 하지만 같이 개발을 한다면 서로가 이해하기 쉽게 작성하지 않으면 스트레스와 피로감이 상당할 거고 이는 프로젝트 컨디션에 영향이 클 것이다. 아래는 가이드라인에 대해 조사해봤다.
1-1) 의미 있는 이름을 사용하셈
변수 이름만 봐도 어떤 값을 담고 있는지 알 수 있도록 작성해야한다.
let count = 100; // 무슨 카운트잉교..
let userCount = 100; // ㅇㅋ
1-2) 일관된 표기법을 사용하셈
지금까지 다른 케이스는 보질 못했는데, 그렇단 것이 아마 대부분 이렇게 사용하지 않을까 싶다
-
camelCase
: 일반적으로 변수와 함수 이름에 사용함 -
UPPER_CASE
: 상수나 환경 변수에 사용함 -
snake_case
: 파일명이나 특정 팀 컨벤션에 따라 사용함
const MAX_USER = 100; // 상수
let userName = "rarrit"; // 변수
1-3) 불필요한 약어와 줄임말은 지양하셈
쓴 사람만 알 확률이 큼. 이해하기 어렵게 쓰면 노노핑이다.
let usrCnt = 100; // ?
let userCount = 100; // ㅇㅋ
1-4) 길이도 신경 쓰면 좋음
변수의 이름이 너무 짧거나 너무 긴 것도 별로임 (그래서 너무 어려움..) 간결하고 의미를 담으면 best!
let ct; // 멍미
let campingUserCurrent머시기머시기; // 너무 긺
회고
이전 팀 프로젝트를 진행하며 boolean
변수에 chk 이라고 변수를 지은적이 있다. 코드리뷰 댓글에서 팀원이 is, has
사용하면 좋을 것 같다고 한것도 있었고 chk 지금 보니 무슨 췍인지 내가 생각해도 킹받는 부분도 있다. 많은 실수 중에 생각나는 실수는 하나지만, 이와 같은 실수가 많아질 경우 나의 팀원은 나의 코드를 볼 때마다 피로함을 느껴야 할 수도.. 간결하고 명확한 변수명을 짓도록 노력하자