헥사고날 아키텍처를 적용하여 프로젝트를 구현해보자.
티켓팅 보조 사이트 - Ticket 🎟
(그림 출처: VROONG 테크블로그)
- 모든 의존성은 애플리케이션 코어(유스케이스, 도메인 계층)를 향한다.
- 비즈니스 규칙은 프레임워크, 데이터베이스, UI 기술, 그 밖의 외부 애플리케이션이나 인터페이스로부터 독립적일 수 있다.
- 인터페이스와 구현체를 분리하여 바깥쪽 계층의 구현 객체를 애플리케이션의 인터페이스 포트에 꽂아 쓰는 방식으로, 포트와 어댑터 아키텍처라고도 한다.
- 공연을 등록한다.
- 이름, 날짜, 회차, 시간, 출연진, 예매 정보 사진, 예매 사이트(여러 개 가능), 장소, 공연 완료 여부
- 공연을 조회한다.
- 공연을 수정한다.
- 출연진으로 공연을 시간순 조회한다.
- 회원 가입
- 소셜 로그인
- 이름, 이메일, 전화번호, 닉네임
- 회원은 공연 좋아요를 누를 수 있다.
- 회원은 공연 좋아요를 취소할 수 있다.
- 좋아요를 누른 공연들의 일정이 관심 공연 달력에 자동 등록된다.
- 티켓팅 일정, 시간, 공연 일자
- 관심 공연의 일정에 맞춰 메일/문자를 발송한다.