프로젝트/ToDoApp프로젝트-FireBase

[ToDoApp-Firebase] 프로젝트 기획 및 설계

sintory-04 2025. 2. 8. 15:25

    1. 웹 프로젝트 기획: 목표 설정과 핵심 기능 정리하기

    1) 프로젝트 목적과 목표 설정

    - 이번 프로젝트는 직관적이고 간편한 일정 관리 기능을 제공하는 TodoApp을 개발하는 것을 목표로 합니다.

    - 사용자가 할 일을 쉽게 추가하고, 수정 및 삭제할 수 있도록 설계하여 사용자에게 일정 관리 경험을 제공합니다.

    - 또한, 실시간 날씨 정보를 연동하여 일정 계획 시 날씨에 따른 고려 요소를 반영할 수 있도록 합니다.

    > 이 프로젝트를 통해 일정 관리를 할 수 있는 직관적인 TodoApp을 개발하는 것이 목표입니다. 🚀

    2) 핵심 기능 정리

    - 할 일 관리 기능: 사용자는 할 일을 추가, 수정, 삭제할 수 있으며, 완료 여부를 체크할 수 있습니다.

    - 데이터 저장 및 관리: 입력된 일정 데이터는 데이터베이스(MySQL)를 활용하여 저장 및 관리됩니다.

    - 실시간 날씨 정보 제공: 외부 날씨 API(OpenWeather 등)를 활용하여 현재 위치의 날씨 정보를 가져와 일정 관리에 참고할 수 있도록 합니다.

    3) 간단한 화면 설계 

    2. 웹 프로젝트 설계: 프론트엔드, 백엔드, 데이터베이스 구조

    1) 프론트엔드 디자인

    - 본 프로젝트는 3~5일 내로 완성하는 간단한 웹 애플리케이션을 목표로 하므로, 빠르고 직관적인 UI 개발을 위해 다음 기술을 활용합니다.

    - HTML, CSS, JavaScript를 기반으로 기본적인 구조를 구성합니다.

    - Bootstrap을 활용하여 UI 컴포넌트를 손쉽게 적용하고자 합니다.

    > 가벼우면서도 직관적인 사용자 경험(UX)을 제공하는 것을 목표로 합니다.

    2) 백엔드 설계

    - 백엔드는 Firebase를 활용하여 구축하며, 별도의 서버 없이 클라우드 기반의 데이터 관리 및 인증 기능을 활용합니다.

    - Firebase Firestore를 사용하여 실시간 데이터 동기화가 가능하도록 설계합니다.

    - REST API 없이 Firebase SDK를 활용한 직접적인 데이터 연동 방식을 채택하여, 개발 속도를 최적화합니다.

    3) 데이터베이스

    - 프로젝트에서는 NoSQL 기반의 Firebase Firestore를 데이터 저장소로 활용합니다.

    - 관계형 데이터베이스 설계가 필요하지 않으므로, 데이터 스키마를 자유롭게 설계하여 유연한 데이터 구조를 유지합니다.

    - 일정(Task) 데이터는 컬렉션(Collection) - 문서(Document) 구조로 저장되며, 각 할 일(Task)은 하나의 문서(Document)로 관리됩니다.