[SuperfluidClone] 2nd project - superfluid 클론 1일차: 첫 미팅, data modeling, signup API 시작

Alex of the year 2020 & 2021·2020년 8월 3일
0
post-thumbnail

2차 프로젝트 팀과 주제가 발표되었다.
SUPERFLUID라는 유럽 화장품 회사의 화~려한 웹을 클론한다.
https://getsuperfluid.com/

프론트적 요소는 가히 기가 막히고
백엔드적 요소는 상품 개수는 적지만, 조금 Challenging하게 해볼 수 있을 법한 수준. 게다가 이번에는 소셜 로그인(Superfluid 홈페이지에는 없지만 2차 프로젝트는 소셜 로그인을 구현하는 것이 목표. 카카오톡 로그인을 구현해보고자 한다.)도 해야하므로 조금 타이트하게 진행해야 할 것 같다. 함께 백엔드로 배정된 동료에게 많이 배우고 함께 힘내서 좋은 결과를 꼭 내고 싶다.

Data Modeling

첫 팀 회의에서 트렐로를 만들고 장고 초기 세팅을 마친 후, 데이터 모델링에 바로 들어갔다. 1차 프로젝트 때 데이터 모델링에 대한 아쉬움이 많이 남았었기 때문에 이번에는 내가 비록 잘 이해하지 못해도, 아직은 어려워도 무조건 함께 하고자 했고 실제로 그렇게 진행했다. 오늘은 우선 User, Product, Order, Review로 크게 네 부분을 나누어 각 테이블 간의 관계를 설정하는데에 힘을 쏟아보았다. 함께 이야기하며, 칠판에도 적어가며, AqueryTool을 이용해서 실제로 시각화해가며 조금은 느리지만 탄탄하게 모델링을 하다보니 조금씩 이해가 되는 것도 같았다.

아직도 모호한 것은

  • 다대다 관계에서 중간 테이블을 설정 할 때, XXXX_id라고 설정하는 컬럼을 세 개 이상 만들 수 있는지
  • 상품을 주문하는 개수(quantity)는 order 테이블과 order_product(order와 product의 중간 테이블)테이블 중 어느 테이블에 설정하는 것이 맞을지
  • 일대일 관계의 테이블은 대체 언제 볼 수 있는지

정도이다. 앞으로 더 많은 질문이 생길 것이다.

API

회원가입, 로그인, 마이페이지 API는 지난번 프로젝트에서 내가 이미 해봤던 부분이기 때문에 이번에도 다시 한 번 내가 해보기로 했다. 하지만 이번에는 소셜 로그인이 더 주된 부분이라, 일반 로그인에는 크게 힘을 주지 않고(시간이 허락한다면 역시 힘을 주겠지만) 내일 세션이 있을 소셜 로그인을 구현하는데 최선을 다해야 할 것이다. 우선 오늘은 회원가입 API까지 구현을 시도했는데, 창피하지만 Mysql DB를 미리 만들어놓지 않고 회원가입 API를 시도해서 PostMan으로 request 받아 DB 저장하는 것은 실패했다. 내일 아침에 가서 바로 코드 수정하여 11시 스탠드업 미팅 전까지는 회원가입 API 전체 뼈대는 완성하고 싶다.

Web Crawling(Product)

이번에 같이 백엔드를 맡게된 동료가 담당하게 된 부분이지만, API 뼈대를 잡은 후 코드를 함께 보고 싶다. 지난번 와이즐리 리뷰 크롤링 때 크롤링 코드를 직접 구현하지 못하고 다른 팀 백엔드 동료에게 결국 도움을 받은 아쉬움이 있었기 때문에 어떤 식으로 효과적으로 코드를, 데이터를 긁어야 하는지 고민이 필요할 것이다.

오늘은 상품 상세 페이지에서 백엔드가 어떤 부분을 크롤링해서 프론트에게 넘겨야할지를 결정했는데 그 중 하나가 '색상 RGB'를 그대로 달라는 요청이었다. 색상 RGB를 그대로 달라는 말이 어떤 말인지 몰라서 개발자 도구를 무진장 뒤졌는데 원하는 바로 그 컴포넌트의 색상이 죽어도 없었다. 같은 백엔드 동료와 고민을 하다가, 혹시나 하는 마음에 같은 팀 프론트 동료에게 "혹시 style 부분에 있는 임의의 RGB 컬러 스포이드를 이용해서 원하는 컴포넌트를 찍어 그 컬러 번호를 드려도 될까요?" 라고 물었다. 프론트 동료는 흔쾌히 그렇게 주어도 전혀 관계 없을 것 같다고 했다. 생각보다 간단한 해결책이어서 놀랐고, 프론트와 백의 소통이 중요함을 다시 한 번 느꼈다.


2차 프로젝트라고 해서 1차보다 무조건 훨씬 수월하다거나, 속도가 훨씬 빠르다거나 할 것이라고 예상하지 않았다. 욕심내지 않고 너무 무리하지 않되 찬찬히 꾸준히 해봐야겠다.

profile
Backend 개발 학습 아카이빙 블로그입니다. (현재는 작성하지 않습니다.)

0개의 댓글