복잡한 자바스크립트 작업을 다룰 때는 단순성, 명확성, 유지 관리 용이성을 유지하는 것이 중요합니다. 확립된 명명법 표준을 준수하는 것은 이러한 목표를 달성하는 데 필수적인 역할을 합니다.

변수, 부울 값, 함수, 상수, 클래스, 컴포넌트, 메서드, 개인 함수, 전역 변수, 파일 등 수많은 프로그래밍 구조가 JavaScript 영역 내에 존재하므로 통일된 명명 체계를 준수해야 합니다. 이러한 엔티티에 라벨을 붙이는 데 보편적으로 인정되는 방법론을 채택하면 코드의 조직 구조와 명확성을 개선하여 궁극적으로 향후 작업의 효율성과 생산성을 높일 수 있습니다.

변수 명명하기

자바스크립트로 코딩할 때는 가독성을 높이고 이해를 돕기 위해 변수에 명확한 명명법을 부여하는 것이 필수적입니다. ‘x’와 같은 모호한 명칭 대신 ‘사용자 이름’ 또는 ‘총 가격’과 같은 명칭을 고려해야 합니다.

“변수에 대한 명명 규칙이 주어지면 명확성과 가독성을 보장하기 위해 이름을 지정할 때 체계적인 접근 방식을 채택하는 것이 좋습니다.

 let totalPrice = 100;
let userName = "John";

명시적 명명법을 활용하면 코드의 가독성을 높일 수 있습니다.

명명법 부울

부울 변수는 참과 거짓의 두 가지 상태만 가정할 수 있는 변수입니다. 이러한 변수의 명명법은 프로그램의 명확성과 효율성을 유지하기 위해 필수적이므로 기능을 정확하게 반영해야 합니다.

isTrue와 같은 지정을 사용하는 것보다 더 정교한 대안은 isValid 또는 hasValue와 같은 용어를 선택하는 것입니다.

죄송하지만 “인스턴스”가 무엇을 의미하는지 이해하지 못하겠습니다.

 let isValid = true;
let hasValue = false;

설명적 부울 변수를 사용하면 각각의 의미를 명확히 설명할 수 있습니다.

함수 이름 지정

자바스크립트에서 함수는 특정 작업을 실행하도록 설계된 불연속적인 코드 세그먼트를 나타냅니다. 이 서브루틴은 프로그램의 여러 부분에서 활성화될 수 있는 명령어 집합으로 구성되며, 별도의 개체로 자율적으로 작동합니다.

기능에 명명법을 할당할 때는 그 목적을 정확하게 반영하는 명칭을 사용하는 것이 중요합니다. 함수를 foo로 지정하는 대신 유효성 검사 사용자 입력 또는 계산 총계와 같이 함수의 본질을 보여주는 별칭을 선택하는 것이 더 현명할 것입니다.

이 글도 확인해 보세요:  Reqwest로 Rust에서 HTTP 요청 만들기

“예를 들어”의 더 정교한 버전을 제공해 주시겠습니까?

 function calculateTotalPrice(price, quantity) {
 return price * quantity;
}
function validateUserInput(input) {
 return input !== undefined && input !== null;
}

상수 명명하기

언어학 용어로 상수는 한 번 할당된 값은 변경할 수 없는 변수를 의미합니다. 프로그래밍 영역에서 상수 명명 규칙은 다른 유형의 변수와 구분하기 위해 모든 대문자와 밑줄을 사용하도록 규정하고 있습니다.

“내 캘린더에 다가오는 수요일 1400시간에 약속이 있습니다.

 const MAX_PRICE = 1000;
const MIN_PRICE = 0;

모든 대문자와 밑줄은 이 데모에서만 사용하여 상수 이름에 사용되었습니다.

클래스 명명하기

자바스크립트에서 클래스 기반 구현을 사용하면 “청사진”이라고 하는 일련의 지침을 활용하여 객체를 생성할 수 있습니다. 완벽한 명명 표준을 유지하기 위해서는 이름 내의 각 단어가 대문자로 시작해야 한다는 파스칼 케이스에 명시된 규칙을 준수하는 것이 필수적입니다.

예를 들어

 class ShoppingCart {
 constructor(make, model) {
   this.make = make;
   this.model = model;
 }
}

앞서 언급한 클래스의 명명법은 클래스 레이블에 있는 모든 구의 첫 글자가 대문자로 변환되고 이러한 단어 사이에 공백이나 밑줄이 없는 파스칼 케이스 규칙을 준수합니다.

컴포넌트 이름 지정

컴포넌트 활용은 특히 재사용 가능한 코드를 우선시하는 React와 같은 프레임워크 내에서 현대 소프트웨어 제작의 중요한 측면입니다.

복잡한 사용자 인터페이스 또는 애플리케이션을 보다 작고 제어 가능한 세그먼트로 분해하면 다양한 작업에서 재사용할 수 있는 구성 요소를 생성할 수 있어 개발 기간이 단축되고 코드화 효율성이 향상될 수 있습니다.

컴포넌트 이름을 지정할 때는 파스칼 케이스 명명 규칙을 반드시 준수해야 합니다. 여기에는 컴포넌트의 명칭 내에서 중요한 단어는 모두 대문자로 시작하는 것이 포함됩니다.

이러한 규칙을 사용하면 구성 요소를 다른 코드 섹션과 구분하여 인식 및 처리를 용이하게 할 수 있습니다.

 function Button(props) {
  return <button>{props.label}</button>;
}

이 예제에서는 구성 요소를 Button으로 표시하기 위해 파스칼 케이스 명명 규칙을 활용하고 있습니다.

메서드 명명

메서드는 본질적으로 엔티티와 연관된 함수이므로 그 목적을 정확하게 반영하는 라벨로 지정하는 것의 중요성을 강조하기 위해 간결하면서도 유익한 명명법을 부여하는 것이 필수적입니다.

이 글도 확인해 보세요:  자바스크립트에서 Intl API를 사용하는 방법

이에 대해 좀 더 자세히 설명해 주시겠어요?

 class Car {
 constructor(make, model) {
   this.make = make;
   this.model = model;
 }
 startEngine() {
   // code to start engine
   }
 stopEngine() {
   // code to stop engine
   }
 }
}

“startEngine” 및 “stopEngine”과 같은 설명적인 명명법을 사용하면 표시된 함수를 명확하게 이해할 수 있습니다.

비공개 함수 명명하기

비공개 함수는 해당 함수가 정의된 객체에서만 액세스할 수 있는 함수이며, 이름 앞에 밑줄을 사용하여 이를 식별할 수 있습니다. 이러한 기호를 포함하면 해당 함수가 해당 범위 내에서 독점적으로 사용하도록 의도되었음을 나타냅니다.

죄송하지만 해당 작업은 현재 제 역량을 넘어서는 수준의 자연어 처리와 이해가 필요하므로 수행할 수 없습니다.

 class Car {
 constructor(make, model) {
   this.make = make;
   this.model = model;
 }
 _startEngine() {
   // code to start engine
 }
 _stopEngine() {
   // code to stop engine
 }
}

이 경우 함수 앞에 밑줄을 사용하는 것은 JavaScript와 관련된 규칙에 따라 공개용이 아닌 사적인 용도로 사용된다는 것을 의미합니다.

전역 변수 명명하기

변수를 전역으로 지정하면 코드베이스 내의 여러 위치에서 변수에 액세스할 수 있습니다. 이러한 전역 변수의 명명법은 간결하고 유익해야 하며, 기능을 정확하게 나타내야 합니다.

첨단 기술의 사용으로 기업은 운영을 간소화하고, 효율성과 생산성을 높이며, 비용을 절감하고, 고객 경험을 향상시키고, 급변하는 오늘날의 시장에서 경쟁 우위를 확보할 수 있게 되었습니다.

 const MAX_PRICE = 1000;
const MIN_PRICE = 0;
function checkPrice(price) {
 if (price > MAX_PRICE) {
   // code to handle high prices
 } else if (price < MIN_PRICE) {
   // code to handle low prices
 }
}

파일 이름 지정

최적의 파일 구성 전략은 파일 제목 내에서 소문자와 하이픈을 사용하여 단어를 구분함으로써 효율적인 접근성과 명명 규칙의 일관성을 촉진하기 때문에 JavaScript 프로젝트의 성공을 위해 가장 중요합니다.

자바스크립트는 본질적으로 대소문자를 구분하는 프로그래밍 언어이므로 대문자와 소문자 간의 차이를 인식해야 하므로 소문자를 사용하는 것이 바람직합니다. 파일 레이블에 균일한 소문자를 구현하면 소스 코드에 해당 파일을 통합할 때 일관성을 보장하고 모호함을 없앨 수 있습니다.

이 글도 확인해 보세요:  React Native에서 Flexbox를 사용하는 방법

공백 포함이 금지되어 있기 때문에 파일 이름에 하이픈을 사용하여 단어를 구분합니다. 밑줄이나 카멜케이스 서식과 같은 대체 옵션도 구현할 수 있지만 가독성 때문에 하이픈 첨가가 선호되는 옵션으로 남아 있습니다.

파일 명명법에 하이픈을 사용하면 특히 스크린 리더 또는 유사한 보조 기술을 사용하는 개인이 해당 파일의 가독성과 접근성을 향상시킬 수 있습니다.

 my-app/
├── src/
  ├── components/
    ├── button.js
      ├── input-field.js
├── utils/
     ├── string-utils.js
     ├── date-utils.js
├── app.js
├── index.js

이 예제에서는 소문자와 하이픈을 사용하여 파일 이름 내의 단어를 구분합니다.

JavaScript에서 명명 규칙 준수의 중요성

적절한 명명법 표준을 준수하는 것은 체계적이고 유지 관리 가능한 코드를 작성하는 데 있어 매우 중요한 요소입니다. 이러한 규범을 준수하면 가독성을 높이고 유지보수를 용이하게 할 수 있으며, 특히 상당한 양의 코드를 관리해야 하는 특정 JavaScript 프레임워크 내에서 장기적으로 시간과 노력을 절약할 수 있습니다.

By 최은지

윈도우(Windows)와 웹 서비스에 대한 전문 지식을 갖춘 노련한 UX 디자이너인 최은지님은 효율적이고 매력적인 디지털 경험을 개발하는 데 탁월한 능력을 발휘합니다. 사용자의 입장에서 생각하며 누구나 쉽게 접근하고 즐길 수 있는 콘텐츠를 개발하는 데 주력하고 있습니다. 사용자 경험을 향상시키기 위해 연구를 거듭하는 은지님은 All Things N 팀의 핵심 구성원으로 활약하고 있습니다.