일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- LV.02
- GIT
- 포트폴리오
- JPA
- SQL
- Redis
- 코테
- LV0
- 디자인 패턴
- LV02
- S3
- Java
- mysql
- docker
- Kafka
- 연습문제
- 일정관리 프로젝트
- 알고리즘
- 데이터 베이스
- LV03
- CI/CD
- 이것이 자바다
- Join
- CoffiesVol.02
- LV1
- spring boot
- 프로그래머스
- 일정관리프로젝트
- Lv.0
- LV01
- Today
- Total
목록2025/05 (8)
코드 저장소.
목차1.문제점2.고민3.적용4.후기5.향후 개선 예정 1.문제점프로젝트에서 일정 등록 기능을 구현하면서 가장 까다로웠던 부분은 일정 간의 충돌 여부를 어떻게 판별할 것인가였습니다. 처음에는 단순히 시작시간 기존 시작시간이면 충돌이라고 생각했지만, 실제 서비스에선 다음과 같은 문제가 발생했다:하루 종일 일정과 시간대 일정이 겹치는 경우 어떻게 볼 것인가?이틀 이상 걸친 일정(MULTI_DAY)과 단일 일자의 겹침은 충돌인가?기존 일정을 수정할 때, 자기 자신도 충돌로 판단되어 등록이 안 되는 문제결국, 일정이라는 도메인은 단순한 시간 범위의 겹침 문제가 아니라 일정의 “의미와 목적”에 따라 판단 기준이 달라져야 한다는 점을 깨달았다.2.고민기존 충돌 로직의 한계를 넘기 위해, 일정 자체에 타입(Sched..

목차1.모듈을 변경하게 된 이유2.적용 후3.마무리 1.모듈을 변경하게 된 이유 프로젝트를 시작을 했을때 멀티모듈과 헥사고날 아키텍처를 도입했다. 도메인과 외부 세계를 분리하려는 시도였고, 이론적으로는 나쁘지 않았습니다. 아래는 당시의 구조입니다.member/├── api│ └── controller├── core│ ├── service│ ├── enumerate│ ├── exception│ ├── model├── connector│ ├── api-model│ ├── in-connector│ ├── out-connector│ └── interfaces├── infrastructure│ ├── api-client│ └── rdb 헥사고날 아키텍처의 철학을 반영하려 했..