[TIL] 210716

2K1·2021년 7월 18일
0

TIL

목록 보기
30/31
post-thumbnail

오늘부터는 클론코딩을 시작됐다. 이번에는 프론트분이 팀장이 됐고 나와 저번주 협업 미니프로젝트에서 같이 한 백엔드 한분이랑 또 같은 팀이 됐다.
먼저 어떤 사이트를 클론 해보고싶은지 논의를 했다. 하나씩 정해서 투표로 정하기로 했다. 나는 프론트가 초반에 할게 많고 시간이 많지 않아서 프론트면에서 간단하고 기능들이 그래도 좀 있는 여기어때를 들고 갔다. 4명에서 2개씩 투표했다 투표결과는

  • 망고플레이트 4표
  • 여기어때 3표
  • 오늘의집 1표
  • 레드불스
  • 📂 구현할 기능

    망고플레이트가 정해졌긴하지만 프론트분들이 감당할수있을까 걱정이였다. 그래서 일단 가장 기본적인것들 먼저 클론해보고 하기로 결정했다.
    1. 맛집 검색
    2. 소셜 로그인
    3. 맛집 상세정보
    4. 맛집 리뷰작성
    5. 맛집 즐겨찾기

    이렇게 정하고 프론트와 백이 나눠져서 진행하기로 했다. 물론 중간중간에 회의도 하면서.

    📂 프로젝트 아키텍처 & 깃

    백엔드에서 저번주에는 팀장이 프로젝트 아키텍처를 다 짜줬지만 이번엔 내가 한번 해보고싶어서 팀원이랑 어떤 라이브러리와 기술스택들을 써보고싶은지, 어떤 ES Module을 선호하는지 의논해서 짰다.

    아키텍처는 프로젝트마다 선호하는 스타일마다 달라지겠지만 우리는 별로 특별한게 없어서 정석(?) 보통적인 아키텍처로 짰다. 그리고 깃도 main에서 보통 dev branch를 하나 파서 제 2의 main 비슷하게 거기서부터 팀원들의 새 branch들을 파서 진행한다고 들었는데 좋은 생각인거 같아서 dev를 하나 파고 프로젝트를 진행했다.

    📂 역할 분담

    팀원분은

  • 소셜로그인
  • 맛집 데이터 크롤링
  • 나는 저번 프로젝트에서 기본 CRUD를 못해봐서 기본CRUD를 하기로 했다.

  • 리뷰 CRUD
  • 맛집 즐겨찾기
  • 맛집 검색
  • 📂 DB 설계

    1. shop ( userId, reviewId )
    2. review ( shopId, userId )
    3. user ( shopId, reviewId )

    수정 삭제가 많은 프로젝트라서 DB는 mysql이 더 적합하지만 MongoDB가 더 익숙하고 둘 다 애매하게 하는것보다 하나를 일단 파보고 싶어서 MongoDB를 계속 쓰기로 했다.
    각 document에서 다른 document들과 연결되있는 필드가 있을거라 거기에 해당 Id들을 정리해 놓은 array를 넣기로 했다.

    이것저것 기본적인 것들을 정하다보니 하루가 다갔다.

    profile
    📌dev_log

    0개의 댓글