NestJS 핵심개념

Outclass·2022년 7월 7일
0

NestJS+GraphQL+TypeORM 

목록 보기
4/16

NestJS의 핵심 개념들을 내 나름대로 이해하기 편한 수준에서 정리해본다.

Module

Controller와 Provider등을 합쳐놓은 덩어리로, nest application 구조를 구성하는 기본단위라고 할 수 있다.

A module is a class annotated with a @Module() decorator. The @Module() decorator provides metadata that Nest makes use of to organize the application structure. - 공식문서

Controller

Request와 Response를 다루는 영역으로, Nest에서는 일종의 라우터의 역할을 한다

Controllers are responsible for handling incoming requests and returning responses to the client. - 공식문서

Provider

Service나 Resolver같은 것들을 의존성으로 주입해준다.

Providers are a fundamental concept in Nest. Many of the basic Nest classes may be treated as a provider – services, repositories, factories, helpers, and so on. The main idea of a provider is that it can be injected as a dependency; this means objects can create various relationships with each other, and the function of "wiring up" instances of objects can largely be delegated to the Nest runtime system. - 공식문서

Service

Controller의 요청에 따라 특정 Response에 대한 비즈니스 로직을 수행한다.

Pipe

일종의 미들웨어 처럼 작동한다. 주로 Validation이나 Transformation에 활용된다

Pipes have two typical use cases:
transformation: transform input data to the desired form (e.g., from string to integer)
validation: evaluate input data and if valid, simply pass it through unchanged; otherwise, throw an exception when the data is incorrect - 공식문서

profile
When you stop having big dreams that’s when you’ve died, despite not being buried yet.

0개의 댓글