Node.js 포인트 기능 구현 방법
조회수 985회
안녕하세요.
첨부한 이미지 유사한 포인트 기능을 개발하고 싶습니다.
궁금한점은 다음과 같습니다.
포인트를 사용/적립 시 구분 방법
데이터베이스 스키마 구성
제가 생각하는 방식은 다음과 같습니다.
사용자 컬렉션에서 'point' 필드 추가
point 컬렉션 생성
type(적립/사용 구분을 위한 구분값 예. 0/1)
point(적립/사용 값)
이 정도로 구성하면 될 것 같은데 제가 생각하는게 맞을까요.
아니면 더 좋은방법이 있을까요.
또는 이러한 경험이 있으신분들이 계실까요.
1 답변
-
묻고 계신 것은 Node.js 질문이 아니라 서비스 기획에 관한 것입니다. 실제로 원하시는 것은 생각보다 훨씬 더 치밀하고 방대할 겁니다.
- 포인트를 언제 누구에게 왜 얼마나 지급했나 하는 기록이 보고 싶으실 거에요.
332
번 회원의 현재point
값이29
라면 도대체 어디서30
을 받고 어디서1
을 까인 건지 알고 싶어질 거잖아요? - 무엇을 할 때 포인트를 얼마나 받을 수 있다거나 써야만 한다거나 하는 목록이 필요하실 거에요.
6682
번 회원이 갑자기 "언제부터 갑자기 댓글쓰면1
포인트 주는 정책이 추가가 됐느냐, 난 그런거 모른다, 당신네들이 오류 일으킨 것 같으니 내가 단 댓글에 대해서 전부 보상해 줘라" 하고 따지러 온다면, 해줄 말이 있어야 할 거잖아요? - 포인트를 무효화하거나 회수할 수 있는지, 있다면 언제 그러한지를 기획하셔야 할 거에요. 말씀하시는 포인트가 "회원 활동 경험치" 같은 일방적 누적 대상이라면 또 모르겠지만, 회원이 열심히 활동해서 모아서 어딘가에 쓰는 것이라면, 그건 경제학적으로 말해서 가치 저장 수단이거든요. 그러면 그건 인위적으로 소모시키지 않는 이상 필연적으로 인플레이션이 일어나는데 이 문제를 대응하셔야 합니다.
말고도 훨씬 더 많습니다. 그게 다 정리되고 나면 DB를 어떻게 만들어야겠다 하는 부분은 이미 정리돼 있을 가능성이 큽니다. 생각해 보세요.
- 포인트를 언제 누구에게 왜 얼마나 지급했나 하는 기록이 보고 싶으실 거에요.
댓글 입력