NestJS - 개념, 시작, 기본 구조

aydennote·2023년 5월 2일
0

Backend

목록 보기
1/6
post-thumbnail

1. NestJS 란?

효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임워크이다. JavaScript와 TypeScript를 완벽하게 지원하며 OOP(객체 지향 프로그래밍), FP(함수형 프로그래밍), FRP(함수 반응형 프로그래밍) 요소를 사용할 수 있게 해줍니다.
출처 : NestJS 공식 사이트


용어 정리

  • OOP : 필요한 데이터를 추상화 시켜 상태와 행위를 가진 객체로 만들고, 객체들간의 상호작용을 통해 로직을 구성하는 프로그래밍 패러다임.
  • FP : 자료처리를 수학적 함수의 계산으로 취급하고 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임.
  • FRP : 비동기적인 데이터 처리를 간단한 함수를 통해 수행하는 프로그래밍 패러다임.

2. NestJS 시작

NestJS를 이용해서 프로젝트를 시작할 때 CLI를 이용하면 간단히 프로젝트를 시작할 수 있다.
Node와 NPM이 설치되어 있다는 가정하에 아래 명령어를 작성하면 된다.

npm i -g @nestjs/cli
nest new [프로젝트명]

3. NestJS 로직 흐름

// app.controller.ts
@Get()
  getHello(): string {
    return this.appService.getHello();
  }

// app.service.ts
  getHello(): string {
    return 'Hello World!';
  }

컨트롤러는 클라이언트 요청을 받아 해당 요청에 대한 응답을 반환한다. 라우터에서 사용되며, 요청을 처리하기 위해 서비스를 호출하고, 데이터를 가공하여 응답을 반환한다.

서비스는 컨트롤러와 데이터베이스 레이어 사이에서 비즈니스 로직을 처리한다. 데이터베이스 레이어와의 상호 작용을 담당하며, 여러 컨트롤러에서 공유될 수 있는 독립적인 모듈이다.


Get()으로 해당 경로 요청 시 컨트롤러에 있는 getHello 함수로 서비스에 있는 getHello 함수를 호출해 반환된 결과를 컨트롤러가 브라우저에게 응답해주는 것으로 이해했다.

참고 강의

profile
기록하는 개발자 Ayden 입니다.

0개의 댓글