코드 컨벤션을 사전에 명확히 정의함으로써, 우리는 서로의 코드를 더욱 쉽게 이해할 수 있으며, 오해가 줄어들 것이라 생각합니다.
물론, 각자의 고유한 코드 스타일에서의 장점이 있을 수 있지만, 그것이 다른 팀원들이 이해를 하지 못한다면 그 코드는 장점으로 보이지 않을 것입니다.
우리가 공통된 코드 컨벤션을 정의함으로써, 개별 스타일의 장점을 유지하면서도 모두가 쉽게 이해할 수 있는 코드를 작성할 수 있을 것입니다. 이러한 노력은 결국 프로젝트의 효율성과 품질을 높여주며, 우수한 결과물을 창출할 것으로 기대합니다!
🐤 [ 도메인 이름 ] + [ Command / Query ] + [ Domain / Infra ] + [ Controller / Service / Repository]
C : create + [ 명사 ]
R : find + [ 명사 ]
U : update + [ 명사 ]
D : delete + [ 명사 ]
메소드 명은 🐫(Camel Case)로 표기할 것!
응답의 형태는 Common 패키지에서 공용으로 사용되며 공통 양식을 유지할 것!
Common 패키지에서 Exception Response Handler 클래스를 생성하여 전체 도메인에서 발생하는 예외를 공용으로 관리할 것!
Create
- Not Found
- illegal Argument
Read
- Not Found
- Not Match Writer : 작성자가 본인이 아닐 때
- Unauthorized Access : 본인이거나 관리자가 아닐 때, 즉 권한이 없을 때
Update
- Not Found
- illegal Argument
- Not Match Writer : 작성자가 본인이 아닐 때
- Unauthorized Access : 본인이거나 관리자가 아닐 때, 즉 권한이 없을 때
Delete
- Not Found
- illegal Argument
- Not Match Writer : 작성자가 본인이 아닐 때
- UnauthorizedAccess : 본인이거나 관리자가 아닐 때, 즉 권한이 없을 때
DTO(Data Transfer Object)를 request와 response로 나누어 제작할 것!
DisplayName 명칭 통일
🐏 [ 도메인 이름 ] + [ 생성 / 조회 / 수정 / 삭제 ] + 테스트 : {테스트 내용}(성공 확인 시 ‘success’ 기입)
ex) `키워드 생성 테스트 : success`

