: Node.js의 서버 측 어플리케이션을 구축하기 위한 프레임 워크
"A progressive Node.js framework for building efficient, reliable and scalable server-side applications."
(NestJS 공식 사이트소개글)
- Spring Framework와 비슷한 부분이 많으나, 처음 접하는 경우 구조가 낯설 수도 있다.
- 2017년에 출시하여 레퍼런스가 적지만, 공식 문서가 친절하게 되어있다.
- 무엇보다 확장성, 유지보수에 강점 가지고 있다.
$ npm i -g @nestjs/cli
$ sudo npm i -g @nestjs/cli //설치 오류가 날 경우 root 권한으로 실행
$ nest new [project-name]
프로젝트 생성 성공 화면
자동 생성된 구조
app.controller.spc.ts
: 컨트롤러를 위한 유닛 테스트
app.controller.ts
: 기본 컨트롤러
app.module.ts
: 애플리케이션의 루트 모듈
app.service.ts
:기능들에 대한 관심사 분리 (controller에 주입하여 사용됨)
NestFactory
를 사용하여 Nest 애플리케이션 인스턴스를 생성async function bootstrap() {
const app = await NestFactory.create(AppModule);
await app.listen(3000);
}
bootstrap();
$ npm run start // 실행
$ npm run test // 테스트 실행
src/main.ts
파일에 정의된 포트에서 수신대기하는 HTTP 서버로 앱 시작지속가능한 소프트웨어를 만들어가는 방법
Spring, NestJS 아키텍처 이해에 큰 도움이 되는 글이다.