코딩 컨벤션 - hamsangjin/InConcert GitHub Wiki

📦 패키지 아키텍처

  • 패키지 분리 기준 예시
    • domain
      • bookmark
        • controller
        • dto
        • entity
        • mapper
        • repository
        • service
    • common (백업 스케줄링, 각종 유틸리티 클래스, validator, exception handler, custom exception, config)

💯 테스트 코드 작성 기준

  • 모든 CRUD 테스트 작성 + ⍺

    • 예시
      1. 글 작성 테스트
      2. 글 조회 테스트
      3. 글 수정 테스트
      4. 글 삭제 테스트
  • 테스트 메서드명 한글로 작성

  • 테스트 메서드의 @DisplayName 애노테이션 생략

  • given, when, then 주석을 명시적으로 붙이며, 생략하지 않기

    • given, when, then 절을 나누기 곤란한 경우 given, when & then 과 같이 & 으로 합쳐 작성
    // given & when
    // when & then
    // given & when & then
    

💥 예외

  • 예외 클래스를 생성해서 GlobalExceptionHandler로 처리하는 것을 기본
  • 예외 메세지를 작성할 때는 개발자가 생각하는 '문제 발생' 형식으로 작성
    • (ex) 해당 반려식물이 존재하지 않습니다.

🪧 주석

  • 어떤 동작을 하는 메소드인지 작성하기
  • 설명이 필요한 로직은 꼭 달아주기