🗳️code style
🏷️ Naming: Case
변수: camelCase
let exampleVariable: null | number = null
let exampleArray: number[] = [];상수, 상수 집합: SNAKE_CACE
const MAX_LENGTH = 5;
const TITLES = ["제목1", "제목2", "제목3"];함수: camelCase
function increaseCount() {...}
const decreaseCount = () => {...}매개변수: camelCase
function playAnimation() {...}
const = () => {...}클래스: PascalCase
타입: PascalCase
컴포넌트: PascalCase
🏷️ Naming: Special Case
Props
Hook / Hoc / Context / Provider
Api / React Query
React Hook Form
🎀 Code Style: Naming
명확한 이름 작성하기
불필요한 문맥 제거하기
구조분해로 인해 명시적이지 않은 값은 재할당으로 명확히 표현해주기
함수는 동사로 작성하기
Prop 네이밍은 내려주는 입장이 아닌 컴포넌트 입장에서 네이밍하기
관행적인 네이밍 방식 사용하기
컴포넌트가 props 에서 event 함수를 받을 때는 on.... 접두사를 붙여 네이밍 하기
컴포넌트에게 넘겨지는 event 함수를 작성할 때는 handle... 접두사를 붙여 네이밍 하기
boolean 관련된 값, 함수는 is, can, has, should 를 사용해주세요
🎀 Code Style: Object
구조 분해 할당을 사용하여 반복되는 코드를 줄여주세요
키값과 벨류에 들어갈 변수명이 동일할 경우 JS 문법으로 더욱 깔끔하게 처리 가능합니다.
🎀 Code Style: If Statement
조건은 캡슐화 해주세요
else 문은 되도록 피해주세요
예외케이스를 우선적으로 리턴해주세요
🎀 Code Style: Function
하나의 함수는 한가지 일만 하게 해주세요
되도록 순수함수로 작성해주세요
함수의 매개변수는 2개 이하로 작성해주세요. 많아진다면 하나의 객체로 넘겨줄 수 있습니다.
🎀 Code Style: Component
상속 보다 조합
참고
추상화 레벨 맞추기
파일 내 선언 순서 지키기

컴포넌트 내부 선언 순서 지키기

useEffect 동작에 대한 주석처리
🎀 Code Style: Apis
network 요청을 하는 api 는 axios instance 를 받는 class 로 선언하기
class 작성 파일 하단에 class instance 를 생성해서 export 하기
method 의 타입정의는 Dto 와 Model 로 구분하여 관리하기
react query 의 query-key 는 함수로 작성하기
query-key 는 custom hook 상단에 작성하기
react query custom hook 을 선언할 땐 기존 커스텀 타입 정의 사용하기
class 의 method 의 parameter 는 반드시 1개 이하로 작성하기
🎀Code Style: Utils
전역적으로 사용하는 util 은 test 코드를 포함하기
🎀Code Style: Types
Reference
Reference: TokTokHan
컨벤션 문서가 조금 어렵게 느껴지신다면
보일러 탬플릿엔 어떤 기능들이 있나요?
Last updated