코드 컨벤션
— Javascript
- 들여쓰기는 공백 문자 2개를 사용한다.
- https://eslint.org/docs/latest/rules/indent
- 한 줄에 하나의 문장을 사용하고 세미콜론으로 끝낸다.
- https://eslint.org/docs/latest/rules/semi
- 명명 규칙
- 변수와 함수는 camelCase 를 사용한다.
- https://eslint.org/docs/latest/rules/camelcase
- 상수는 SNAKE_CASE 를 사용한다.
- 생성자는 PascalCase 를 사용한다.
- 범용적 대문자 약어는 그대로 사용한다. ( HTML, URL, ID 등 )
- 전역 변수를 사용하지 않는다.
- const, let 을 값 변경 여부에 따라 적절하게 사용한다. var 는 사용하지 않는다.
- http://eslint.org/docs/rules/no-var
- 외부 모듈과 내부 모듈 선언 사이에 공백을 둔다.
- 객체의 프로퍼티가 1개인 경우에만 한 줄 정의를 허용한다. 2개 이상일 경우에는 개행을 강제한다.
- https://eslint.org/docs/latest/rules/object-property-newline
- 객체의 메서드 표현 시 축약 메서드 표기를 사용한다.
- https://eslint.org/docs/rules/object-shorthand
- 메서드 문법 사용 시 메서드 사이에 개행을 추가한다.
- http://eslint.org/docs/rules/lines-between-class-members
- 함수는 화살표 함수를 사용하는 것을 강제한다.
- http://eslint.org/docs/rules/prefer-arrow-callback
- 화살표 함수에서 암시적 반환을 활용한다.
- 오브젝트 프로퍼티에 접근할 때 Destructuring 을 사용한다.
- http://eslint.org/docs/rules/prefer-destructuring
- 한 줄짜리 블록이라도 중괄호를 생략하지 않는다.
- http://eslint.org/docs/rules/brace-style
- http://eslint.org/docs/rules/curly
- switch-case 사용 시 첫 번째 case 문을 제외하고 case 문 전에 개행한다.
- 삼중 등호 연산자를 사용한다.
- http://eslint.org/docs/rules/eqeqeq
- 배열을 순회할 때 for 문 사용을 지양한다.