코딩 컨벤션
이란 내가 나의 코드를, 다른 사람이 나의 코드를 보고 원활하게 의사소통하고 해석하기 위한 규칙입니다. 코딩 컨벤션
을 규정하는 이유느 사람마다 코딩 스타일이 제각각이기 때문입니다. 다음은 자바스크립트에서 if
문을 사용하는 세 가지 방식입니다.
if() {
return;
}
if()
{
return;
}
if() return;
이처럼 사람마다 제각각인 코딩 스타일들을 하나로 통일해서 가독성과 유지보수성을 높이고, 원만한 협업을 할 수 있게 미리 약속해둔 코딩 규칙을 코딩 컨벤션
이라고 합니다.
자바스크립트의 코딩 컨벤션은 회사마다, 집단마다 조금씩 차이가 있기 때문에 저는 공통적인 코딩 컨벤션들을 가지고 소개해드리겠습니다. 따라서 제가 소개해드리는 컨벤션은 정형화된 정석이 아닙니다.
-
, 언더바_
로만 작성한다..js
로 통일한다.UTF-8
을 사용한다.;
은 필수가 아닌 언어지만, 반드시 붙여준다.,
와 세미콜론;
의 뒤에 공백을 넣는다.CamelCase
를 따른다. (예. getReady(), colorOfCar)언더 스코어
방식을 이용한다. (예. PI, MAX_VERTEX)PascalCase
를 따른다. (예. Student, MyClass)_
로 시작한다. (예. _id, _name)on
으로 시작한다. (예. onClick, onMove)//변수와 함수명
const PI = 3.14;
let number = 2;
let getSquare = (number) => {
return number * number;
};
//클래스 명명과 프라이빗 멤버
class StudentInfo {
let _name;
let _id;
constructor(name, id) {
this._name = name;
this._id = id;
}
}
if () //나쁜 작성
{
}
if () { //나쁜 작성
callFunction(); }
if () { //좋은 작성
callFunction();
}
if
문에서는 구문이 한 줄의 명령을 가지면, 같은 라인에 명령을 작성하고 중괄호를 생략할 수 있다.for (let i=0; i<3; i++) callFunction(); //나쁜 작성
for (let i=0; i<3; i++) { //종은 작성
callFunction();
}
//단, if문은 다음과 같은 작성을 허용
if () callFunction();
//조건부는 쓸데없이 길어지지 않도록 한다.
if (foo === true) //나쁜 작성
if (foo) //좋은 작성
let
, const
를 사용한다."
대신 작은 따옴표'
를 사용한다.var num1; //var 선언은 지양할 것. 블록 스코프와 관련한 문제가 있습니다.
let num2;
const num3;
let a, b; //한 번에 여러개의 선언보단,
let c;
let d; //나눠서 이용하기
//문자열은 작은 따옴표 이용하기
let str = "문자열입니다.";
let str = '문자열입니다.';
==
과 !=
대신 ===
, !==
를 사용한다.if (a==b) //나쁜 작성
if (a===b) //좋은 작성
//나쁜 작성
function() {
let result;
result = 1+1;
return result;
}
//좋은 작성
function() {
return 1+1;
}