Skip to content

개발 문서

Jaeyoon Lee edited this page Sep 1, 2023 · 20 revisions

브랜치 전략

  • Git Lab Flow 채택
image
prefix 설명
develop 기능 개발이 완료되었을 때, merge 되는 브랜치. merge 방식은 squash를 사용한다
feat develop 브랜치에서 시작되는 기능 추가용 브랜치 (ex. feat/{이슈 번호})
fix develop 브랜치에서 시작되는 버그 수정용 브랜치 (ex. fix/{이슈 번호})
release develop 브랜치에서 시작되는 QA용 브랜치
main 실제 QA가 마무리되고, 안정적으로 운영 환경에 배포할 수 있는 브랜치

커밋 컨벤션

prefix 설명
feat 기능 추가
refactor 코드 및 폴더 구조 개선(폴더 이동), 버그 수정과 기능 추가를 제외한 코드 수정
(ex. 오탈자, 타입 수정, 필요 없는 코드 제거)
fix 버그 수정
style 세미콜론 추가, 코드 포맷팅 수정
chore 프로젝트 유지와 관련된 작업 (의존성 관리)
test 테스트 관련 작업 (추가, 수정, 제거)
docs 문서 작업
rename 파일, 폴더명 수정
comment 주석 관련 작업
design css 관련 작업

어떤 prefix를 써야 할지 모른다면 슬랙에 물어보기!


백엔드

코드 스타일

  • wooteco-style.xml 코드 스타일 사용
  • "객체지향 생활체조 4번 : 한 줄에 점은 하나만 찍는다." 지키기
  • final은 불변 필드에만 적용하기
  • 클래스 상단 한 줄 개행 추가하기
  • 매개변수가 3개 이상인 경우부터는 개행 추가하여 작성하기
public Example(
		Long id, 
		String name,
		String vintage
) {
  ...
}

테스트 코드

  • 테스트 메서드 네이밍은 한글로 작성
@Test
void 차량을_모두_반환한다() {
   ...
}
  • given & when & then 패턴 사용 (필요 없다면 생략 가능)
  • 서비스 테스트는 FakeRepository를 사용, E2E 통합 테스트로 자세한 검증 -> 시간 단축
  • 다중 검증은 assertSoftly 사용하기
  • 인수 테스트에 로직은 최대한 Fixture에 숨기기

프론트엔드