Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🛠 Related issue
📌 필수 과제
✅ 일기장 필수 기능 구현
📌 선택 과제
✅ 일기장 선택 기능 구현
🌀 구현 내용
💡일기 작성 기능
(제목 : 최소 1자 ~ 최대 10자 - 다른 일기와 중복 방지)
(본문 : 최소 1자 ~ 최대 30자)
💡일기 조회 기능
💡회원가입 및 로그인 기능
🤧 트러블 슈팅
해결
https://psychedelic-perigee-94e.notion.site/3-12caebccb8e481349527eacd61891cb8?pvs=4
💥 새로 알게된 점
고민 1. 카테고리별 조회 기능 어디서 처리해야하는가?
단순히 데이터를 가져오는 CRUD 기능 외에, 조회 조건이나 필터링 조건을 처리하는 것은 Service에서 담당하는 것이 일반적으로 더 효율적이다. Repository가 단순한 데이터 접근 계층으로 역할을 한정할 수 있게 하고, Service 계층에 비즈니스 로직을 모아두어 가독성과 확장성을 높이기 위한 설계 방식.
Service
계층에 조회 조건(필터링, 정렬 등)을 관리 → 변경 사항이 생겨도Service
계층만 수정Repository
계층은 단순히findTop10ByOrderByCreatedAtDesc()
같은 기본 조회 쿼리를 제공→ 이를
Service
에서 호출하여 필요한 조건을 추가로 처리하는 것이 유지보수에 유리함!💥 궁금한 점
궁금한 점. 잘못된 카테고리가 전달되었을 때 어디서 오류 처리를 해야하는가?
처음에는 서비스라고 생각했음 (이유 : 카테고리에 따라 글을 분류하는 역할을 서비스에서 처리하니까..?)
→ 결론 : 컨트롤러에서 처리함
💥 컨트롤러에서 카테고리 유효성을 검사하는 이유
입력된 요청 파라미터의 유효성 검사를 빠르게 처리 → 서비스 계층에 잘못된 값이 전달되지 않도록!
→ 이렇게 하면 서비스 계층에서 비즈니스 로직을 처리할 때는 이미 유효한 값이 전달되므로 코드가 보다 간결하고 오류가 줄어든다!
그런데 제 생각이 맞는지 모르겠어요 ㅠㅠ 😭
Screenshot 📸
To Reviewers 📢
너무 늦게 올려서 죄송해요 여러분 흑흑