🤝 활동/내배캠TIL

[내일배움캠프 34일차 TIL] 뉴스피드 프로젝트 설계

MNY 2024. 6. 7. 17:29
728x90
반응형
오늘의 진도 : 뉴스피드 프로젝트 설계 및 역할분담까지...

설계는 하루, 나머지는 코딩... 👩‍💻👨‍💻!
팀 프로젝트, 오늘의 회고 이렇게 2개의 큰 틀로 나누어 정리할 것이다.

 

팀 프로젝트

* 피그마

https://www.figma.com/board/tSMVD3wg5zSrPHbTzjvtWW/13%EC%9D%BC%EC%9D%98-%EA%B8%88%EC%9A%94%EC%9D%BC?node-id=17-1078&t=jkCllfNmeD9Ismns-0

 

Figma

Created with FigJam

www.figma.com

 

  • 진행 상황
    • api 명세서 작성
    • erd 작성
    • 와이어프레임 제작
    • 역할분담
  • api 명세서 작성

다 같이 작성하다가 팀원 한 분이랑 부리더님이 api 명세서 작성을 맡아서 진행하시고

나머지 2명(나랑 리더님)은 erd 작성을 맡았다.

다 작성한 것은 팀 노션으로 옮겼다.

 

* 작성하면서 발생한 문제 & 생각

  • User, Mypage(profile)로 Controller을 2개로 나눔
    • response와 dto 관리가 편할 것 같음
  • 로그아웃 : 어떠한 방식으로 로그아웃을 시킬것인가?
    Token삭제? 쿠키삭제?
    • 리프레쉬 토큰 DB 삭제
      서버에서 리프레쉬 토큰을 삭제했으니 클라이언트 측에 "accesstoken(쿠키)를 삭제해 주세요" 메시지 전송
  • 프로필 조회 기능 + 프로필 수정 기능 : 프로필을 본인만 조회 가능한지 아닌지 여부가 헷갈림
    전체 조회 가능하면 {id} 필요, 본인만 조회 가능하면 토큰만 보내도 알 수 있음
    response시 아이디를 넣어주는게 맞을까?
    • 본인 프로필로 조회하기로 함
      profile -> mypage 수정 좀 더 restful함
  • 게시글 조회 할때 댓글도 한번에 가지고오는가?
    • 게시글과 댓글 한번에 보내는 건 프론트와 협의를 해야함.
      -> 굳이 한번에 보내지 않기로 함.
  • 도메인, 계층 : 처음 계층과 도메인을 섞으려고 했음. 이유는 DTO의 양이 많이질 것 같아서 였음.
    • <단점>
      같이 사용할 때 장점이 없음.
      패키지가 너무 복잡해질 우려가 있음.
    • 프로젝트의 사이즈가 크지않아 계층형으로 진행하기로 했음.
      dto => requestdto
      dto => responsedto
      dto 세부 패키지로 따로 나누어서 진행하기로 함.

      도메인, 계층 한가지 방법으로만 통일해야함.
  • 1. /api/board/{boardId}/comment/{commentId} ?
    2. /api/comment/{commentId} ?
    • 1번 보안 측면에서 좋다.
      어떤 게시글에 어떤 댓글 인지 확인하여 처리하는 것이 좋다.

 

  • erd 작성

일단 피그마에서 나와 리더님이 작성했고

그걸 기반으로 부리더님이 ERDcloud에서 새로 작성해주셨다.

 

* 작성하면서 발생한 문제 & 생각

  • user_id랑 password 조건, 유효성 검사(validation) 사용인데
    entity? dto? 어디서 사용하지?
    • request dto에서 검사
  • 일자를 나타내는 컬럼명은 date 보다 at으로 한이유? ex) createDate -> createdAt
    • 간결하다.
    • date보다는 더 정확한 시점(날짜와 시간을 포함)을 나타낸다.

 

  • figma

 

  • ERDcloud

 

  • 와이어프레임 제작

* 피그마

 

  • 로그인

 

  • 회원가입

 

  • 마이페이지

 

  • 메인페이지

 

  • 게시글 상세페이지

 

  • 역할분담
    • 리더 : 댓글 추가, 댓글 전체 조회, 댓글 수정, 댓글 삭제
    • 부리더 : 게시글 작성, 게시글 조회, 게시글 전체 조회, 게시글 수정, 게시글 삭제, 좋아요 등록, 좋아요 취소
    • 팀원 : 회원가입, 회원탈퇴, 로그인, 로그아웃 ( 인증 / 인가 )
    • 나 : 마이페이지 조회, 마이페이지 수정, 비밀번호 수정, 이메일 가입 및 인증 기능


오늘의 회고

  • 12시간 중 얼마나 몰입했는가?

12시간 전체를 몰입해서 한 것 같다.

팀 프로젝트를 하며 설계 부분은 팀원과의 회의가 필수이기 때문에

팀원들과 계속 상의하며 설계 부분을 작성하여 12시간 전부를 몰입했다.

 

  • 오늘의 생각

이메일 인증이 재밌어 보여서 내가 맡는다고 했는데 살짝 어려워 보이기도 한다. 

그리고 부리더님이 그렇게 하기 싫어하셨던 로그인/회원가입을 다른 팀원분이 맡으셔서 너무나 안타깝다.

 

  • 내일 학습할 것은 무엇인지

팀프로젝트를 진행할 예정이다.

일단은 이슈카드를 만들고 fork 한 후에 마이페이지 부분을 전부 끝낼 생각이다.

마이페이지를 완료한 후 시간이 된다면 이메일 관련된 부분까지 끝내버릴 생각이다.

728x90
반응형