HANA -J

TIL - Nest.js 본문

what I Learnd/TIL

TIL - Nest.js

Hana-J 2022. 2. 8. 00:47

- Nest.js ?

Nest(NestJS)는 효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임워크입니다. 프로그레시브 JavaScript를 사용하고 TypeScript로 구축하고 지원합니다. (개발자가 JavaScript로 코딩할 수 있음)

OOP(객체 지향 프로그래밍), FP(기능 프로그래밍) 및 FRP(기능 반응 프로그래밍)의 요소를 결합합니다.

내부적으로 Nest는 Express와 같은 HTTP 서버 프레임워크를 사용하며 선택적으로 Fastify 도 사용하도록 구성할 수 있습니다.

Nest는 이러한 일반적인 Node.js 프레임워크(Express/Fastify)보다 높은 수준의 추상화를 제공하지만 해당 API를 개발자에게 직접 노출합니다. 이를 통해 개발자는 기본 플랫폼에서 사용할 수 있는 수많은 타사 모듈을 자유롭게 사용할 수 있습니다.

(출처 : https://docs.nestjs.com/)

 

- Nest.js 설치 

$ npm i -g @nestjs/cli
$ nest new project-name

- 설치 -> src 디렉토리 생성(코어파일로 채워진다)

출처 : https://docs.nestjs.com/first-steps

  • app.controller.ts 단일 경로가 있는 기본 컨트롤러
  • app.moudule.ts 애플리케이션의 루트 모듈
  • app.service.ts 기본 서비스를 제공
  • main.ts 핵심 기능 NestFactory을 사용하여 Nest 애플리케이션 인스턴스를 생성하는 애플리케이션의 항목 파일

- Nest.js는 도메인을 기준으로 모듈을 만들어서 사용가능(추상화)

  • AppModule(root)
    • BoardModuel
      • BoardController
      • BoardService
      • BoardEntity
      • BoardRepository
      • ValidationPipe
    • AuthModule
      • AuthController
      • UserEntity
      • AuthService
      • UserRepository
      • JWT, Passport

 

더 좋은 사실은 디렉토리를 생성하고 그안에서 nest g controller board  cli 명령어를 실행시키면 생성이 된다.

728x90
Comments