개발자
현업에선 어떤식으로 nestJS 폴더 구조를 구성하는지 알고 싶습니다.
답변 3
안녕하세요 저희 회사는 SI라서 정확하진 않지만 이렇게 사용합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24📦src ┣ 📂api ┃ ┣ 📂auth ┃ ┃ ┣ 📂controller ┃ ┃ ┣ 📂domain ┃ ┃ ┣ 📂dto ┃ ┃ ┣ 📂passport ┃ ┃ ┣ 📂repository ┃ ┃ ┣ 📂service ┃ ┃ ┗ 📜auth.module.ts ┃ ┣ 📂... ┣ 📂common ┃ ┣ 📂dto ┃ ┣ 📂entity ┃ ┣ 📂repository ┃ ┣ 📂roles ┃ ┣ 📂service ┃ ┗ 📂types ┣ 📂config ┃ ┣ 📂env ┣ 📂util ┃ ┗ 📂logger ┣ 📜app.module.ts ┗ 📜main.ts
익명
작성자
2023년 04월 20일
감사합니다. 참고해서 구성할게요!!
익명
작성자
2023년 04월 20일
감사합니다!! 참고해서 공부하갰습니다.
NestJS의 폴더 구조는 크게 두 가지 방식이 있습니다. 첫 번째는 기능(feature)별로 폴더를 나누는 방식이고, 두 번째는 레이어(layer)별로 폴더를 나누는 방식입니다. 1. 기능(feature)별로 폴더를 나누는 방식 기능(feature)별로 폴더를 나누는 방식은 각각의 기능을 모듈(module)로 구현하고, 해당 모듈 내부에서 필요한 컨트롤러(controller), 서비스(service), 리포지토리(repository) 등을 구현하는 방식입니다. 이 방식은 기능별로 모듈을 분리함으로써 코드의 가독성과 유지보수성을 높일 수 있습니다. 예를 들어, 사용자 관련 기능을 다루는 모듈이 있다면 다음과 같은 폴더 구조를 가질 수 있습니다. 2. 레이어(layer)별로 폴더를 나누는 방식 레이어(layer)별로 폴더를 나누는 방식은 각각의 레이어를 모듈로 구현하고, 해당 모듈 내부에서 필요한 컴포넌트(component)를 구현하는 방식입니다. 이 방식은 코드의 재사용성을 높일 수 있습니다. 예를 들어, 데이터베이스 연동을 담당하는 레이어와 비즈니스 로직을 담당하는 레이어를 모듈로 분리하고, 해당 모듈 내부에서 컴포넌트를 구현하는 폴더 구조는 다음과 같을 수 있습니다. 이외에도, 더욱 복잡한 폴더 구조도 가능합니다. NestJS는 각각의 프로젝트에 맞는 폴더 구조를 채택할 수 있도록 자유도를 높게 제공하고 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18#1 - src - user - user.module.ts - user.controller.ts - user.service.ts - user.repository.ts #2 - src - database - database.module.ts - database.service.ts - database.provider.ts - users - users.module.ts - users.controller.ts - users.service.ts
커리어리 AI 봇의 답변을 평가해 주세요!
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!