공통 정책
- 복잡한 함수나 중복 성 함수는 무조건 따로 빼기
- 반복문 Stream, For, Foreach, While 어떤 것을 쓰던 자유이나 가독성 있도록 코드 작성
- 매우 자주 쓰는 함수의 경우 Util 따로 만들어서 공통으로 사용
데이터 수신
- 수신하는 인덱스는 모두 Idx 접미사 사용 → 이유: userId, userIdx 의미가 모호
- Endpoint 당 Request 객체 하나씩 각개로 생성해 사용(차후 유지 보수시 Side Effects 방지)
Path
- URL 에서 _ 대신 - 대시 기호를 사용한다.
데이터 반환
- 데이터 반환은 무조건 Builder 패턴으로
- Endpoint 당 Response 객체 하나 생성해 사용
- Response 객체는 Dto 객체를 사용해 데이터 바인딩
- Dto 는 중첩 Class 사용 지양하며, Dto 파일로 따로 생성 (Response - Dto 형식 유지)
- 데이터 반환은 오직 Dto 이용 ( HashMap 사용 등 임의 일회성 형식 사용 금지)
- 데이터 반환은 CommonResponse<> 기준으로 하며 토큰 관련은 ResponseEntity 감싼다
- Business logic 데이터 불변성 지키기