데브허브 | DEVHUB | Task Tracking App for Beginners Part 1: Build your FIRST Spring Boot AppTask Tracking App for Beginners Part 1: Build your FIRST Spring Boot App
- 초보자를 위한 Spring Boot 앱 개발 프로젝트: 이 프로젝트는 초보자를 위해 실제 Spring Boot 태스크 추적 애플리케이션을 구축하는 3부작 시리즈의 첫 번째 부분입니다. 🚀
- 개발 환경 설정 및 필수 지식: Java 21+, Maven, Docker, Node 20+ 및 기본적인 Spring Boot 지식이 필요하며, IntelliJ IDEA를 IDE로 권장합니다. 🛠️
- PostgreSQL 데이터베이스 연동: Docker를 사용하여 PostgreSQL 데이터베이스를 시작하고 애플리케이션과 연결하는 방법을 다룹니다. 🐳
- 애플리케이션 도메인 설계: 프로젝트 요구사항 분석을 통해 Task List와 Task 엔티티를 정의하고, 데이터베이스 매핑 및 관계를 포함한 도메인 모델을 설계합니다. 🏗️
- 핵심 기능 요구사항: 태스크 목록 생성/수정/삭제, 태스크 생성/수정/삭제/완료, 태스크 목록별 완료 진행률 추적 등의 사용자 스토리를 기반으로 합니다. ✅
- 도메인 모델링 기법 활용: 명사 식별, 도메인 모델 다이어그램, 클래스 다이어그램, 엔티티 관계 다이어그램(ERD)을 통해 Task List와 Task 간의 일대다 관계를 명확히 합니다. 📊
- UUID 및 타임스탬프 적용: 엔티티 식별자로 UUID를 사용하고, 생성 및 업데이트 시간을 기록하는
created 및 updated 타임스탬프를 포함합니다. 🕰️
- React 기반 프론트엔드 제공: Spring Boot 백엔드에 집중하면서도, 실제 작동을 시각적으로 확인할 수 있도록 React 기반의 최소 기능 제품(MVP) 프론트엔드를 제공합니다. 🖥️
- Enum을 활용한 상태 및 우선순위 관리: 태스크 상태(Open/Closed)와 우선순위(High/Medium/Low)를 Enum으로 정의하여 데이터의 일관성을 유지합니다. 🚦
- 비즈니스 로직 분리: 도메인 클래스에는 비즈니스 로직을 포함하지 않고, 서비스 클래스에서 처리하는 Spring Framework의 일반적인 접근 방식을 따릅니다. 🧠