[NestJS] 기본 구조, 설치, 프로젝트 생성하기

혜진·2024년 8월 20일
0

NestJS

목록 보기
1/12
post-thumbnail

NestJS 기본 구조, 설치, 프로젝트 생성하기

NestJS

TypeScript를 기반으로 한 Node.js 확장 프레임워크로, 모듈화된 구조와 의존성 주입을 통해 확장 가능하고 유지 보수하기 쉬운 서버사이드 애플리케이션 개발을 지원한다.

NestJS 특징

  • 모듈화 아키텍처: 코드의 재사용성과 유지 보수성을 높이기 위해 기능별로 모듈화된 구조를 지원한다.
  • 의존성 주입: 객체 간의 결합도를 낮추고 테스트 용이성을 높이기 위해 의존성 주입 패턴을 사용한다.
  • TypeScript 지원: 정적 타입을 통해 코드의 안정성과 가독성을 높이며, 최신 JavaScript 기능을 활용할 수 있다.
  • 다양한 프로토콜 지원: REST API뿐만 아니라 GraphQL, WebSockets, Microservices 등 다양한 통신 방식을 기본적으로 지원한다.

NestJS 기본 구조

  1. 모듈 (Module)
  2. 컨트롤러 (Controller)
  3. 서비스 (Service)
  4. 데코레이터 (Decorator)
  5. 미들웨어 (Middleware)
  6. 파이프 (Pipe)
  7. 필터 (Filter)

NestJS 기본 형태

  • 앱 모듈 (AppModule): 애플리케이션의 루트 모듈로, 다른 모듈, 컨트롤러, 서비스를 관리하는 역할을 한다.
  • 컨트롤러 (AppController): HTTP 요청을 처리하는 역할을 한다. 클라이언트의 요청을 받아 적절한 서비스를 호출하고, 결과를 반환한다.
  • 서비스 (AppService): 비즈니스 로직을 처리하는 서비스 계층으로, 컨트롤러에서 호출되어 데이터를 처리하거나 로직을 수행한다.
  • 메인 파일 (main.ts): 애플리케이션을 시작하는 진입점으로, NestJS 애플리케이션을 실행한다.

NestJS 설치하기

1. Node.js와 npm설치하기

brew install node

설치 후 버전 정보 확인하기

node -v
npm -v

2. NestJS CLI(Command Line Interface) 설치

npm install -g @nestjs/cli

이렇게 하면 설치 완료!

3. nestjstest 라는 새 프로젝트 생성하기

nest new nestjstest

  • npm: Node.js의 기본 패키지 매니저로, 광범위한 사용성과 큰 커뮤니티를 자랑한다.
  • Yarn: npm의 성능 및 안정성 문제를 개선한 패키지 매니저로, 빠른 설치 속도와 모노레포 지원이 특징이다.
  • pnpm: 효율적인 디스크 공간 활용과 빠른 설치 속도를 제공하는 패키지 매니저로, node_modules 구조를 독특하게 관리한다.

4. 패키지 매니저 선택하기

npm, yarn, pnpm 중에 npm 선택!

5. 프로젝트 디렉토리로 이동

# cd 디렉토리가 있는 경로
cd /Users/ihyejin/Downloads/client/NestJS/nestjstest

6. 애플리케이션 실행하기

npm run start:dev

이렇게 하면 시작 성공!

0개의 댓글