$(달러 사인) 변수 작명법
인터넷 강의를 통해 공부하던 중에 DOM조작할 시에 한개의 태그를 가져올때는 $(달러사인) 한개를 사용하고, 여러개의 태그를 가져올 때는 $ 두개를 사용해서 변수명을 작명하는 것을 본 적이 있다.
const $list = document.querySelector('li');
const $$list = document.querySelectorAll('li');
강사는 위의 예시처럼 변수명을 주로 작명한다고 했다.
가독성도 좋고 사용할 때 편할 것 같다고 느꼈다. 그래도 혹시나 사용하는데에 문제가 있을까 찾아봤다.
변수명에 $ 기호를 사용하는 것은 JavaScript 언어 자체에서 문법적인 오류를 일으키지 않으므로, 기술적으로는 문제가 없다. 그러나 보통 jQuery 라이브러리에서 $ 기호를 변수명 앞에 사용하는 것과 관련이 있다. jQuery는 $ 함수를 제공하며, DOM 요소를 선택하고 조작하는 데 사용된다. 그래서 일부 개발자들은 $ 기호를 변수명 앞에 사용하여 변수가 DOM 요소를 나타낸다는 것을 나타내기도 한다.
하지만 이러한 규칙은 일반적으로 개인적인 취향이나 개발 팀의 규칙에 따라 달라진다. 변수명을 작성할 때는 의미 있는 이름을 사용하는 것이 좋다. 이는 코드 가독성과 유지 보수성을 높이며, 코드의 이해를 돕는다. 그러므로, $ 기호를 변수명 앞에 사용할 필요는 없으며, 변수명을 작성할 때는 명확하고 의미 있는 이름을 사용하는 것이 좋다.
변수명을 잘 작성하는 방법
변수명은 코드의 가독성과 이해를 돕는 중요한 역할을 한다. 따라서 변수명을 잘 작성하는 것은 개발자로서 중요한 스킬 중 하나다.
의미 있는 이름 사용
변수명은 변수가 어떤 값을 나타내는지 명확하게 설명할 수 있도록 작성해야 한다. 변수명이 해당 변수가 나타내는 값과 밀접하게 연관되어 있다면, 코드를 이해하는 데 도움이 된다.
카멜 케이스 사용
변수명은 일반적으로 카멜 케이스를 사용하는 것이 좋다. 카멜 케이스는 여러 단어를 사용할 때, 첫 번째 단어를 제외한 각 단어의 첫 문자를 대문자로 작성하는 방식이다. 예를 들어, firstName, lastName, listItems와 같이 작성한다.
예약어 피하기
JavaScript에서 예약어는 이미 코드의 일부로 사용되는 단어다. 따라서 변수명으로 예약어를 사용하는 것은 피해야 한다.
일관성 유지
변수명을 일관되게 작성하는 것이 좋다. 즉, 변수명에 사용하는 스타일과 규칙을 유지하는 것이 좋다.
축약어 사용 피하기
변수명에 축약어를 사용하지 않는 것이 좋다. 축약어는 가독성을 저해할 수 있으며, 변수의 의미를 명확하게 전달하지 않을 수 있다.
변수의 범위 고려
변수의 범위를 고려하여 변수명을 작성하는 것이 좋다. 변수가 전역 변수인지, 지역 변수인지, 상수인지에 따라 변수명을 작성하는 방식이 달라질 수 있다.
변수 작명법 예시
예를 들어, 다음과 같은 코드가 있다고 가정해보자.
const fName = "John";
const lName = "Doe";
const age = 30;
const countryOfResidence = "USA";
console.log(fName + " " + lName + " is " + age + " years old and lives in " + countryOfResidence);
위의 코드에서는 변수명을 작성하는 일부 법칙을 지키지 않고 있다. 변수명에는 의미가 없는 축약어가 사용되어 있고, 일부 변수는 카멜 케이스를 사용하지 않아서 읽기 어렵다. 또한, 변수의 범위를 고려하지 않아서 나중에 코드를 유지보수하거나 수정해야 할 때 문제를 야기할 가능성이 있다.
이를 개선하기 위해서는 다음과 같이 변수명을 변경할 수 있다.
const firstName = "John";
const lastName = "Doe";
const age = 30;
const country = "USA";
console.log(firstName + " " + lastName + " is " + age + " years old and lives in " + country);
변경된 코드에서는 변수명이 해당 변수가 어떤 값을 나타내는지 명확하게 설명할 수 있도록 작성되었다. 또한, 변수명은 카멜 케이스로 작성되어 있으며, 축약어는 사용하지 않는다. 이렇게 하면 코드의 가독성과 유지보수성이 향상된다.
개발자들이 제일 어려워 하는 것 중 하나가 변수명 짓기라고 한다. 항상 어떻게하면 의미있고 간결하고 유지보수하기 쉬운 변수명을 지을 수 있을 지 고민해보자.