[WIL] 내일배움캠프 8주차

My_Code·2024년 6월 10일
0

TIL

목록 보기
49/113
post-thumbnail

본 내용은 내일배움캠프에서 활동한 내용을 기록한 글입니다.


💻 WIL(Weekly I Learned)

📌 주간 학습 목차

✏️ 월요일

  • 팀프로젝트가 본격적으로 진행되는 날

  • 주말 동안은 각자 자기가 맡은 부분을 구현함

  • 상품 게시물쪽 파트가 시간이 많이 늦어져 내가 붙여서 게시물 관련 CRUD를 구현함

  • 게시물 작성을 구현할 때, 두 가지 쿼리가 한 트랙젝션에서 처리되어야 하기 때문에 prisma의 트랜젝션 문법을 통해 구현함


✏️ 화요일

  • 월요일에 완성하지 못한 상품 게시물관련 API들을 마무리함

  • 추가적으로 게시물 좋아요, 좋아요 취소 기능을 구현함

  • 좋아요 기능은 생각보다 쉽게 구현이 되었지만 좋아요 순으로 정렬하는 코드에서 조금 오래 걸림

  • 좋아요를 누른 사용자의 ID와 게시물 ID를 저장하는 좋아요 테이블이 있기 때문에 좋아요의 수를 좋아요 테이블에서 계산해서 가져와야 함

  • 찾아보니 prisma_count라는 쿼리를 이용해서 간단하게 구현이 가능했음


✏️ 수요일

  • 구현할 기능은 이제 명예의 전당의 기능들이 남아있었음

  • 나는 그 중 multer를 이용한 이미지 업로드하는 기능을 맡음

  • 정확히는 S3 저장소를 이용한 multerS3를 활용해서 구현해야 함

  • 튜터님께서 사용하는 방법을 블로그로 잘 설명해주셔서 적용하는 것은 어렵지 않았음

  • CredentialsProviderError: Could not load credentials from any providers 라는 자격 관련한 에러가 발생함

  • 찾아보니 aws-sdk의 버전 변화로 인한 코드의 구조가 바뀌었다고 함


✏️ 목요일

  • 현충일로 인한 휴일

  • 하지만 팀프로젝트 제출이 다음날이기 때문에 팀원들 모두 나와서 프로젝트를 진행함

  • 그래도 대부분의 구현이 마무리 되어서 에러를 해결하고 문서작업을 진행함

  • 상품 구매/판매 내역 관련한 코드에서 에러가 많이 발생해서 수정에 시간이 걸림


✏️ 금요일

  • 대망의 팀프로젝트 제출 및 발표하는 날

  • 대부분의 기능을 구현했지만, 조금 더 고도화가 필요하기에 계속해서 테스트를 함

  • 체크하다보니 팔로우한 사용자의 게시물을 보는 API가 구현되지 않았음

  • 서둘러서 기능을 구현했고 여기서 Optional Middleware라는 개념을 알게 됨

  • Optional Middleware는 해당 미들웨어를 어떤 경우에는 사용하고 어떤 경우에는 사용하지 않도록 만드는 방법임

  • 그래서 나는 Optional Middleware를 통해서 게시물 목록 조회하는 API에서 로그인한 경우에는 팔로우한 사용자의 게시물을 볼 수 있는 필터를 만듦



📌 향후 계획

  • 팀프로젝에서 너무 달려서 주말에는 휴식을 취하면서 팀원들과 코드 리뷰를 진행할 예정임

  • 코드 리뷰에서는 각자가 작성한 코드를 다른 팀원들에게 설명해주는 것임

  • 다음주에는 Node.js 심화 강의와 개인과제가 진행됨

  • 새로운 팀원들을 만나고 새로운 내용을 배운다고 하니 굉장히 기대됨



📌 이번 주 느낀 점

  • 중간에 이런저런 일들이 있었지만, 그래도 무사히 발표까지 끝냈음

  • 팀프로젝트를 진행하면서 새로운 내용들을 많이 알게 되었음

  • S3를 이용한 multer, Optional Middleware, nodemailer 등 기존에 활용해보지 못한 기술들을 이렇게 사용해볼 수 있는 기회가 생겨서 굉장히 좋았음

  • 특히 S3를 이용한 multer는 약간 어떤 기능인지 알았지만 구체적인 사용 방법이나 활용 방법은 알지 못했는데, 직접 이미지를 업로드하는 과정을 만들어보니 여러가지 방법으로 활용이 가능하겠다고 생각했음


profile
조금씩 정리하자!!!

0개의 댓글