Skip to content

📚 그라운드룰

김진성 Kim Jinsung edited this page Nov 18, 2022 · 12 revisions

공통

  • 탈주 금지 👻
  • 지각 === 커피 ☕️
  • 매주 목요일 오프라인 미팅
  • 매일 아침 30분, 마감 30분 전 진행 상황 체크 ✔
  • 주말은 당당하게 쉬기 🤗
  • 남탓하지 말기 🙅‍♂️
  • 고집부리지 않기 🙅‍♂️
  • 서로의말에 경청하기 👂
  • 데일리스크럼 끝날 때 서로에게 칭찬하며 자존감을 많이 높여주기 👏
  • 회식 시 마지노선 3~4만원으로 너무 많이 달리지 말고 서로의 건강을 챙겨주기
  • 그라운드룰 위반 시 반성문 일지 적으면서 본인의 인성에 대해서 돌아보는 시간을 가지기
  • 평일 오후 9시 이후에는 각자의 시간이니까 부담주지 않게 일적인 연락은 자제하기 (만약 체크리스트를 완수하지 못했다면 연락 가능)

Github

브랜치 전략

  • main, dev, feature/{issue-number}-{feature-name}, hotfix 브랜치를 사용한다.
  • main에는 매주 목요일 저녁에 머지하도록 한다.

커밋 메시지

  • 커밋 메시지 작성 시 본문에 작업 내용을 꼭 적는다.
  • 커밋 메시지
    • Feat: 기능추가/새로운 로직
    • Fix: 버그수정
    • Chore: 간단한 수정
    • Docs: 문서 및 리드미 작성
    • Merge: 머지, 충돌
    • Refactor: 리팩토링
    • Test: 테스트 코드 작성
    • Style: CSS 관련 코드 작성 및 수정

이슈 본문

  • 템플릿을 최대한 활용하여 작성한다.

Pull Request

  • 탬플릿을 최대한 활용하여 작성한다.
  • 두 명의 승인을 받으면 merge 할 수 있다.

코딩 컨벤션

0. Prettier 설정

  • 기본적인 코드 환경은 Prettier를 따라간다.

1. 네이밍

  • 컴포넌트 파일명: PascalCase
  • 일반 파일명: kebab-case
  • 클래스명: PascalCase
  • 상수명: UPPERCASE_SNAKE_CASE
  • 컴포넌트 폴더명: PascalCase
  • 일반 폴더명: snake_case

2. 타입 선언

// GOOD
interface User {
  name: string;
  email: string;
}
// BAD
type User = {
  name: string;
  email: string;
}
  • 기본적인 타입 선언은 interface를 따라간다. 단, nest.js 환경에서 DTO 는 Class로 설정한다.

3. 고차함수

// GOOD
array.forEach((i) => i*2)
array.map((i) => i*2)
array.filter((i) => i*2)
// BAD
for (const val in array) {
  // for loop 순회는 사용하지 않는다.
}

4. Optional Chaining보다 if 문을 사용한다.

// GOOD
const adventurer = {
  name: 'Alice',
  cat: {
    name: 'Dinah'
  }
};

if (adventurer.dog) {

}
// BAD
const dogName = adventurer.dog?.name;
Clone this wiki locally