코드 컨벤션
코드 스타일 컨벤션패키지 구조 (미정)
- Presentation - Application - Domain(Entity) - Infrastructure
- DDD 레이어
- controller - service - repository - domain
ImageUploader - interface
S3Uploader
DTO 컨벤션
- dto entity간 변환은 어떻게 할 것인지
- 라이브러리 사용 mapstruct, modelmapper
사용하지 않고 DTO 자체 구현
- 별도의 변환 메소드 구현
- 의존성을 고려하여 두개의 dto를 쓰도록
생각해보니 Service간에는 Service가 의존하도록 하고 싶었지만 Dto를 사용한다면 할 수 가 없음 ㅠ
- 네이밍
- web → request , response
- service → requestDto, responseDto
- 자바 17 → 모두 record
- 자바 11 → 둘 다 모두 기본생성자 구현 (private)
예외 처리
- enum errorcode
- a001
- BusinessException
- ErrorCode
- Message
로깅 전략 ( 후에 정해도록 )
cloudwatch 로그 연동
- 슬랙 연동하여 error시 알람 가도록
- SQL문 로깅 , 로깅 레벨 정해야함
- logback
- 비동기 로깅