「EmergencyAssistant」 프로젝트 백엔드 개발 분석
실시간 응급실 조회 서버를 뜯어보며 application·domain·infra 멀티모듈 분리와, CQRS·파사드 패턴으로 기능 함수를 조합해 비즈니스 로직을 드러내는 방식을 정리한 분석 기록.
🔍 「EmergencyAssistant」 프로젝트 백엔드 개발 분석
📅 분석 일자: 2024-10-07
🏗️ 프로젝트 정보
- 프로젝트명: EmergencyAssistant-Server
- GitHub 링크: https://github.com/prgrms-be-devcourse/NBE1_2_Team06/tree/develop
- 개발자/팀: NBE1_2_Team06
- 주요 기능: 실시간 응급실 현황 조회
🏷️ 주요 키워드
- 지속 성장 가능한 소프트웨어, 멀티 모듈, 의존성, CQRS, Facade Pattern
💻 기술 스택
- 백엔드: Java, Spring Boot
🛠️ 구현 방식
모듈 구성
🎁 [서비스 명]-application
- 컨트롤러 명 네이밍
[도메인]Api.java구성
🎁 [서비스 명]-domain
🎁 [서비스 명]-infra
서비스 로직 구성은?
- 여러 기능 함수들을 조합해 최종적으로 컨트롤러 부분에서 호출
좀 더 모듈 별로 구분지어 살펴보자면
- 크게 2가지 도메인, 애플리케이션으로 나뉘게 되고
- 각 기능함수들은 CQRS 패턴으로 네이밍 지어서 조합하게 된다
이전 내용 다시 확인 (파사드 패턴, CQRS) - 참고
💡 주요 기술적 인사이트
- CQRS 패턴, 파사드 패턴을 이용해 비즈니스 로직(도메인 언어)로 구성