포시코딩

[Nest.js] 1. 시작하기 본문

Node.js

[Nest.js] 1. 시작하기

포시 2023. 2. 9. 16:56
728x90

Nest 커맨드 맛보기

nest g co posts
  • nest: nest 커맨드 시작
  • g: generate
  • co: controller

즉, 위 명령어는 nest로 posts라는 컨트롤러를 만들겠다. 라는 의미

 

Nest.js 사용법

Nest.js 설치

npm i -g @nestjs/cli

-g: 전역으로 설치

 

Nest 프로젝트 생성 명령어

nest new nest_prac

Nest.js와 npm이 가장 호환이 잘 되기 때문에 npm 선택(엔터)

 

설치 완료 시 위와 같은 프로젝트를 확인할 수 있다.

 

app.module.ts

app.module.ts 파일을 열어보면 처음보는 @Module 과 같은 코드를 확인할 수 있는데

이런걸 데코레이터 라고 부른다.

 

데코레이터는 해당 클래스나 함수가 어떤 역할을 수행하는지에 대해

Nest.js에게 알려주는 역할이다. metadata 와 같은 역할

 

다른 파일에서 볼 수 있는 @Controller, @Get도 마찬가지

 

@Injectable 데코레이터

 

app.service.ts

app.service.ts 파일을 보면 @Injectable() 이라는 데코레이터를 볼 수 있는데

이걸 통해 AppService가 필요하면 언제든지 DI를 통해 사용할 수 있다. 라는 의미이다.

때문에 AppController가 AppService를 잘 의존하고 있음

 

AppService와 같은 서비스 객체는 실제로 Repository를 의존하며 비지니스 로직 실행을 담당한다.

웹 어플리케이션의 핵심 부분이라고 할 수 있다.

728x90