티스토리 뷰
Nest Js 공식 설명
Nest(NestJS)는 효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임워크입니다. 이 프레임워크는 프로그레시브 자바스크립트를 사용하며, 타입스크립트로 구축되어 완벽하게 지원하면서도 개발자가 순수 자바스크립트로 코딩할 수 있도록 하며, OOP(객체 지향 프로그래밍), FP(함수형 프로그래밍), FRP(함수형 반응형 프로그래밍)의 요소를 결합합니다. 내부적으로 Nest는 Express(기본값)와 같은 강력한 HTTP 서버 프레임워크를 사용하며 선택적으로 Fastify도 사용하도록 구성할 수 있습니다! Nest는 이러한 일반적인 Node.js 프레임워크(Express/Fastify보다 추상화 수준이 더 높지만 API도 개발자에게 직접 노출합니다. 따라서 개발자는 기본 플랫폼에서 사용할 수 있는 수많은 타사 모듈을 자유롭게 사용할 수 있습니다.
nest js cli를 설치 해서 프로젝트를 만들고 사용 할 수 있다.
$ npm i -g @nestjs/cli
$ nest new project-name
데코레이터(Decorator)
ES2016 데코레이터는 함수를 반환하고 대상, 이름 및 속성 설명자를 인수로 받을 수 있는 표현식입니다. 데코레이터 앞에 @ 문자를 붙이고 데코레이터를 적용하려는 대상의 맨 위에 배치하면 됩니다. 데코레이터는 클래스, 메서드 또는 프로퍼티에 대해 정의할 수 있습니다.
자바스크립트의 오브젝트 프로퍼티에 대해서 알고 있으면 원리에 대하여 좀더 쉽게 접근 할 수있다.
참고 설명:
https://medium.com/google-developers/exploring-es7-decorators-76ecb65fb841
Nest에서 커스텀 route 데코레이터 (Custom route decorators) 예시 1 - Param
import { createParamDecorator, ExecutionContext } from '@nestjs/common';
export const User = createParamDecorator(
(data: unknown, ctx: ExecutionContext) => {
const request = ctx.switchToHttp().getRequest();
return request.user;
},
);
@Get()
async findOne(@User() user: UserEntity) {
console.log(user);
}
출처:
- https://docs.nestjs.com/
- https://www.typescriptlang.org/ko/docs/handbook/decorators.html
- https://docs.nestjs.com/custom-decorators
'Nest' 카테고리의 다른 글
#6 Nest Gateway (0) | 2024.12.06 |
---|---|
#5 Nest 모듈 (Module) (1) | 2024.12.05 |
#4 Nest 커스텀 프로바이더 (0) | 2024.12.05 |
#3 Nest 프로바이더(Provider) (0) | 2024.12.04 |
#2 Nest Controller (1) | 2024.12.04 |
- Total
- Today
- Yesterday
- inheritance
- Kotlin
- Unity2D
- 자바스크립트
- 유니티 게임 개발
- Transform
- Linux
- 리액트
- 상속
- nestjs socket connection
- JavaScript
- JVM
- 리눅스
- Unity
- 유니티
- nest js
- Java
- 오버라이딩
- 유니티 게임개발
- 유니티 실습
- object
- 코틀린
- 클래스
- 함수
- 유니티 캐릭터
- 자바
- 유니티 개발
- 유니티 플레이어 캐릭터
- nest
- react
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |