<aside> ☝ 업데이트일자: 2022년 7월 12일 업데이트를 진행한 지 오래된 문서입니다. 현재 작성하는 스타일과 상이한 부분이 있을 수 있습니다.

</aside>

해당 문서는 Coding 시 사용되는 convention과 Guideline을 혼합하여 작성한 문서입니다.

효율적이고 일관된 흐름으로 작성하기 위한 필수적인 규칙과, 코드를 작성하며 마주할 수 있는 안티 패턴들을 피할 수 있는 스타일 가이드를 통합하여 작성했습니다.

해당 규칙을 4가지로 분류하여 작성합니다.

규칙 분류

우선순위 A = 🔒 : 필수

일관된 코드 작성을 위해 필수적으로 지켜야하는 규칙입니다.

팀 단위로 사용 시 해당되는 규칙이 지켜지지 않을 경우, Reviewer의 동의를 받지 못할 수 있습니다.

이 규칙에 해당하는 것은 런타임 시 오류가 필수적으로 날 수 있는 패턴을 방지하거나, 팀에서 관습적으로 사용되는 내용입니다.

우선순위 B = 🎯 : 가급적 맞출 것

대부분의 프로젝트에서 가독성 및 추후 유지보수를 위해 지켜지는 것이 좋은 규칙입니다.

해당 규칙을 꼭 어겨야만 하는 이유가 있는 것이 아니라면 꼭 지키는 것이 좋습니다.

우선순위 C = 👍 : 추천 패턴

이 규칙은 여러가지 옵션이 존재할 경우 일관성을 지키기 위해 만들어진 가이드라인에 가깝습니다.

해당 규칙은 특정 시점에 이루어질 수 있는 여러 옵션이 제안되어야 하고,특정한 이유가 없다면 해당 옵션 중 하나의 방법으로 작성되는 것이 좋습니다.

우선순위 D = ⚠️ : 주의 필요

이 규칙은 특정한 상황의 안티 패턴을 피하기 위한 지침입니다.

작성한 코드가 이 규칙에 해당하는 패턴이라면 다른 방식으로 작성하는 것이 런타임 시 에러를 줄일 수 있습니다.

Javascript

Declare 선언 방식

Format - 주석, 조건식 사용

Typescript

Vue

Component - 기능 구조

Directory - 폴더 구조

State - 상태 관리

React

Airbnb Style guide

ETC

Git 전략

CSS Format

README

MUI: https://mui.com/material-ui/

Chakra: https://chakra-ui.com/docs/components

Vuetify: https://vuetifyjs.com/en/components/alerts/

Quasar: https://quasar.dev/