Nest.js

GW·2024년 7월 12일

NestJS 모듈이란 ?

  • Nest JS를 사용해서 만드는 앱 구조
  • 모듈은 @Module () 데코레이터로 주석이 달린 클래스입니다.
  • @Module () 데코레이터는 Nest가 애플리케이션 구조를 구성하는 데 사용하는 메타 데이터를 제공합니다.
  • 각 응용 프로그램에는 하나 이상의 모듈 (루트 모듈)이 있습니다. 루트 모듈은 Nest가
    사용하는 시작점입니다

Board Module 생성하기

모듈생성 명령어

nest g module boards

Controllers

Controller 란 ?

  • 컨트롤러는 들어오는 요청을 처리하고 클라이언트에 응답을 반환합니다.

    Controller는 @Controller 데코레이터로 클래스를 데코레이션하여 정의

Handler 란 ?

  • 핸들러는 @Get, @Post, @Delete 등과 같은 데코레이터로 장식된 컨트롤러 클래스 내의 단순한 메서드입니다

컨트롤러 생성 명령어
nest g controller boards --no-spec

Providers 란 ?

  • 프로바이더는 Nest의 기본 개념입니다. 대부분의 기본 Nest 클래스는 서비
    스, 리포지토리, 팩토리, 헬퍼등 프로바이더로 취급될 수 있습니다.
  • 프로바이더의 주요 아이디어는 종속성으로 주입할 수 있다는 것입니다. 즉, 객체는 서
    로 다양한 관계를 만들 수 있으며 객체의 인스턴스를 "연결"하는 기능은 대부분 Nest 런타임 시스템에 위임될 수 있습니다.

Service 란 ?

  • 서비스는 소프트웨어 개발내의 공통 개념이며, NestJS, Javascript에서만 쓰이는 개념
    이 아닙니다.
  • @Injectable 데코레이터로 감싸져서 모듈에 제공되며, 이 서비스 인스턴스는 애플리
    케이션 전체에서 사용 될 수 있다.
  • 서비스는 컨트롤러에서 데이터의 유효성 체크를 하거나 데이터베이스에 아이템을 생
    성하는 등의 작업을 하는 부분을 처리합니다.

Service를 Controller에서 이용할 수 있는 방법( Dependency Injection)

0개의 댓글