개발일지
중간점검: 프로젝트 구조 변경 본문
프로젝트를 더 진행하기 전 구조적으로 보완이 필요하다고 판단했습니다.
- middleware 폴더 분리
common
은 interface, dto와 같이 공통적으로 정의 하기 위한 폴더입니다.middleware
의 성격과는 다르다는 생각이 들어common
폴더와 분리했습니다. 또한, middleware 안에서도exception.filter
와interceptor
를 분리했습니다. - 인증 관련 서비스 users > auth 모듈로 분리
후에 소셜 로그인, 이메일 인증 등 인증 과정이 추가될 수 있다고 생각했습니다. 확장성을 위해 인증 관련된 부분만 관리하는auth
모듈을 추가했습니다.
또한,/users/jwt
에 있던auth.decorator.ts
를/common/decorator
로 이동했습니다. = - app 폴더 추가
auth, users, votes, common, middle 모두/src/*
안에 존재하다보니 구조적으로 복합하다는 생각이 들었습니다. 따라서 auth, users, votes 등 프로젝트의 모듈만을 관리하는app
폴더를 생성했습니다.
수정된 프로젝트 구조는 다음과 같습니다. 파일을 제외한 폴더 구조만 나타냅니다.
├── prisma
├── src
│ ├── app
│ │ ├── auth
│ │ │ └── jwt
│ │ ├── users
│ │ └── votes
│ ├── common
│ │ ├── decorator
│ │ ├── dto
│ │ └── interface
│ ├── middleware
│ │ ├── exception.filter
│ │ └── interceptor
├── app.module.ts
├── main.ts
'NestJS, Node.js > #01 Project - 투표 커뮤니티' 카테고리의 다른 글
[NestJS] 투표 하기 구현 (0) | 2022.11.03 |
---|---|
[NestJS] 투표 글 생성하기 구현 (0) | 2022.11.03 |
[NestJS] Refresh token으로 Access token 재발급하기 (0) | 2022.10.28 |
[NestJS] Custom decorators (0) | 2022.10.28 |
[NestJS] 로그인 구현 #2 - Passport, JWT (0) | 2022.10.27 |