프로젝트 기간동안 많은 개발자들과 함께 개발을 진행하며 코드스타일의 일체화에 대해 중요성을 깨닫게 되었다.
컨벤션은 유지보수에 투자되는 비용을 최소화하기 위해 통일된 코드 작성법을 제시한다. 코드를 최초로 작성한 사람이 끝까지 유지보수할 확률은 매우 낮다. 따라서, 최초 개발자가 아닌 사람도 코드를 빠르고 정확하게 이해할 수 있도록 작성하는 것은 코드의 유지보수 비용을 절감하고 업무 효율을 높이는 데 결정적인 역할을 한다.
Javascript
네이버 - https://github.com/naver/eslint-config-naver/blob/master/STYLE_GUIDE.md
AirBnB - https://github.com/airbnb/javascript
Toast - https://ui.toast.com/fe-guide/ko_CODING-CONVENTION
ESLint와 같은 린터를 사용한다는 가정하에 린터로 검출할 수 없는 모호한 부분을 가이드한다.
ESLint
ESLint는 JavaScript, JSX의 정적 분석 도구로 오픈 소스 프로젝트이다. 코드를 분석해 문법적인 오류나 안티 패턴을 찾아주고 일관된 코드 스타일로 작성하도록 도와준다. JSLint, JSHint와 같이 다른 JavaScript 정적 분석 도구들도 있지만, ESLint가 커스터마이징이 쉽고 확장성이 뛰어나 많이 쓰이고 있는 추세이다. ESLint는 스타일 가이드를 좀 더 편리하게 적용하기 위해 사용하기도 하는데, 외부에 공개되어 많은 개발자가 사용 중인 Airbnb Style Guide, Google Style Guide 가 그 대표적인 예이다.
Tool 사용 사례
ESLint, ESLint 컨벤션 설치
var 나 console 경고 예시
커스터 마이징 가능
Java
컨벤션 규칙정의
Java
네이버 - https://naver.github.io/hackday-conventions-java/
NHN - https://nuli.navercorp.com/data/convention/NHN_Coding_Conventions_for_Markup_Languages.pdf
InteliJ Plugin (Check Style ) 추가 가능
컨벤션 어길경우 아래와 같이 경고 표시
다양한 IDE, Editor 에서는..
EditorConfig
팀원 마다 다른 editor 를 쓰는 경우, 팀마다 다른 규칙을 쓰는 경우
.editorconfig config 파일 추가로 프로젝트마다의 규칙을 설정한다.
'ELSE' 카테고리의 다른 글
Quora 모음 n++ 보다 ++n 쓰기 등 (0) | 2022.07.20 |
---|---|
컴퓨터 운영체제 몇 비트인지 확인하기 (0) | 2019.08.14 |
블로그에 광고 달기, HTML 편집해서 본문 & 메뉴 광고달기 (Google Adsense) (0) | 2019.04.18 |
Tistory 블로그 광고 달기, 구글 애드센스 (본문에 광고) (0) | 2019.04.18 |
git 계정 변경, Git Permission denied 될 때 (1) | 2019.04.05 |