본격적인 프로젝트를 시작하기 전인 현재, 기획단계에서 가장 막막했던 부분들은 구체적인 컨셉과 그에 따른 필요 기능들 선정, 역할분담, DB설계 정도로 말할 수 있을 것 같다.
현재 역할분담까진 정해진 상태여서 일단 대략적인 DB관계를 설정해보았다.
db설계가 처음이다보니 구글링으로 쇼핑몰 관련 테이블과 필드들을 어떤 식으로 구성하는지 많이 참고했다.
쇼핑몰 컨셉도 가지각색이다보니 필요 기능에 따라 세부적으로 테이블과 필드들이 짜여져 있었는데
일단 최소한의 기본적인 쇼핑몰 기능 구현에 방향이 잡혀있기 때문에, 회원과 상품, 주문 관련 테이블 위주로 참고했다.
ERD Cloud라는 유명한 db드로잉 툴도 인터넷으로 대략적인 사용법을 참고하여 직접 그려보았는데, 생각보다 사용법이 굉장히 단순해서 좋다!
초심플 쇼핑몰 db테이블..
나름 기본적인것만 짜본다고 짜봤는데, 설계를 하다보니 몇가지 고민들이 생겨났다.
- 상품 이미지 db테이블의 경우, 썸네일(대표이미지)과 상세이미지 테이블을 별도로 둬야 하는지
- 하나의 주문내역에서 여러 주문상품들이 들어 갈 때, 총 주문금액은 별도의 쿼리문으로 자동합산 되게끔 해야하는지
- 인터넷의 다른 쇼핑몰 DB에선 카테고리, 주문상세 테이블 등을 추가로 두었는데 그 이유가 뭔지
물론 저 테이블이 확정은 아니기 때문에 아마 실제로 기능구현을 하는 과정에서 지속적으로 수정하게 될 것이다.
추가로, 현재 만드려는 쇼핑몰은 재능마켓(크몽, 탈잉 등) 컨셉으로 전자책(PDF) 상품을 판매할 계획이기 때문에
해당 pdf 파일 테이블을 따로 만들어 상품 등록시 파일을 업로드 후, 결제가 완료될 시 해당 주문내역에서 pdf 파일을 다운받을 수 있도록 해야할 지 고민을 하고 있다. (실제 결제단계는 구현하지 않기 때문에..)
더미 데이터를 만들어 구현할 수는 있을 것 같은데, 이 부분은 일단 기본적인 쇼핑몰 구현이 어느정도 완성된 단계에서 결정하는게 나을 것 같다.
'프로젝트' 카테고리의 다른 글
토이프로젝트 (1) - DB 설계 / 로그인, 회원가입 구현 (0) | 2023.04.12 |
---|---|
개인 프로젝트 시작! (0) | 2023.04.11 |
첫 팀 프로젝트를 시작하며 (0) | 2023.02.04 |