20220821_WIL_미니프로젝트 주차, 리뷰

codeing999·2022년 8월 21일
0

TIL/WIL

목록 보기
16/22
post-thumbnail

회고

이번주도 공부시간 1등. 뻥튀기 된 면도 없잖아 있기 때문에 152시간이란 시간이 중요한건 아니고.. 어쨋든 잠 쪼개가며 할 수 있는 최대한으로 열심히하고 있단 건 맞다.

@ 미니프로젝트 때는 시퀄라이즈로 디비가 참 잘만들어졌었다. 근데 이글을 쓰며 클론 코딩을 하고 있는 지금은 그 때 정리해둔 방법대로 똑같이 하는데도 외래키 관계가 잘 생성되지 않아서 애먹은 상태다. 일단 지금은 해결한 상태긴한데 이놈의 시퀄라이즈는 언제 또 나를 뒤통수 칠지 모른다. 진짜 난 이딴게 어떻게 널리 쓰이는 건지 모르겠다. 똑같은 방식으로 쳐도 다르게 동작하는게 컴퓨터라고 할 수 가있나?

알고리즘 스터디 종료

스터디 깃헙 링크
@ 민석님과 알고리즘 주차 종료 후에도 계속 해오던 알고리즘 스터디가 끝이 났다. 매주 일요일마다 몇문제씩 풀었는데 이제 다음 주말은 실전프로젝트이기 때문에.. 거기에 집중해야한다. 난이도 설정에 실패하여 그래프 문제들에 호되게 혼나기도 했지만 분명 내가 좀만 더 알고리즘에 익숙했더라면 풀만 했겠단 생각은 들었다. 그래서 항해99 수료하고나면 알고리즘에 더 도전해야겠단 목표가 명확해졌다.
오늘은 프로그래머스 코딩 테스트 실전 모의고사를 신청하여 풀어보며 마무리 했다. 3시간 동안 4문제를 푸는 것이었는데 2문제만 풀고 나머진 더 시간 파도 이해가 안될 것 같아서 중단했다. 더 공부해서 다음에 이런 테스트가 있으면 다 풀 수 있도록 노력해야겠다.

이건 알고리즘 주차 때 문제에 힌트글 하나 달아놨던 건데 거기에 댓글이 몇개 달려있는 걸 오늘 발견했다.

미니 프로젝트

프로젝트 주제

@ 프론트엔드와 백엔드의 첫 협업이었는데, 이번주 발제 때도 쉬어가는 주라고 말하면서 스코프를 작게 잡을고 하길래 간단한 SNS를 만들기로 주제를 합의 하였다.
빨리 끝나면 개인공부도 할 수 있겠다고 생각했는데 그럴 시간은 없었다.

시연 영상

패키지

  "dependencies": {
    "aws-sdk": "^2.1196.0",
    "bcrypt": "^5.0.1",
    "cors": "^2.8.5",
    "dotenv": "^16.0.1",
    "express": "^4.18.1",
    "joi": "^17.6.0",
    "jsonwebtoken": "^8.5.1",
    "morgan": "^1.10.0",
    "mysql2": "^2.3.3",
    "nodemon": "^2.0.19",
    "sequelize": "^6.21.3"
  },
  "devDependencies": {
    "prettier": "2.7.1",
    "sequelize-cli": "^6.4.1"
  }

@ morgan이란 걸 새로 써봤는데 프론트분들이 우리쪽 서버에 요청하는 게 로그가 남아서 신기했다. 쏠쏠한 기능인 듯.
@ 프론트와 협업을 하기 때문에 이번 프로젝트부턴 CORS 처리를 해줘야 했는데 화이트 리스트 개념이라 그렇게 어려운 설정은 아니었다. 그런데 나는 이것이 요청 헤더의 Origin 값을 기준으로 필터링한다는 것을 지나쳐버리고 실제 요청자의 IP와 포트번호를 내가 어떻게 식별하지? 이렇게 고민하다가 시간을 좀 날려버렸다.
@ aws-sdk 이건 이번주 주제가 SNS이다보니 사진 업로드 및 사진 삭제 기능이 필요해서 쓰게 된 것이다. 사진 관리를 프론트와 백엔드 누가 할지가 초반에 고민이었는데 매니저님과의 상담 결과, 프론트는 S3 버켓에 업로드 후 그 URL만 백엔드에 넘겨주고 백엔드는 그 URL을 DB에 저장해서 관리하고 프론트가 URL 요청 시 그 URL을 전달하고 삭제 요청시엔 URL에 접근하여 삭제하는 것을 맡기로 했다. 그래서 나는 S3에 있는 이미지를 삭제하는 부분을 구현하였다.
@ 나는 이번에 로그인/회원가입 쪽을 맡지 않았지만 그쪽을 맡은 성령님이 리프레쉬 토큰 기능을 구현하였다. 이쪽에 대해서는 정답이란게 없어서 검색해봐도 다 다른게 나온다면서 많이 어려워했다. 나는 자세한 기술은 모르지만, 로그인 시 세션이란 테이블에 해당 유저의 세션 정보를 저장하고 로그아웃이나 탈퇴 시에 삭제하는 그런 형태는 보았다.

profile
코딩 공부 ing..

0개의 댓글