Nest.js란?
Nest.js는 Typescript를 완벽지원하는 효율적이고 확장가능한 Node.js의 서버 어플리케이션 프레임워크로
OOP(Object Oriented Programming), FP(Functional Programming), FRP(Functional Reactive Programming) 요소를
결합하는 특징을 가지고 있다.
Express를 기반으로 한 Node.js 어플리케이션을 쉽게 구축할 수 있게 해주며,
모듈화, 의존성 주입 등의 기능을 제공하여 코드를 보다 구조적으로 작성할 수 있다.
기본 컨셉
기본 컨셉은 Provider(Service), Controller를 각 Module로 합치고,
그 각각의 Module을 app.module에 합쳐서 사용하는 것이다.
Nest.js는 싱글톤 패턴을 지향하기 때문에 인스턴스를 직접 생성하지 않고
Module을 통해 Injection하는 패턴을 권장한다.
Nest.js 설치
npx @nestjs/cli new qqq
- npx 명령어를 이용해 @nestjs/cli 를 다운받는다
- new를 사용해 qqq 라는 프로젝트를 만들고, @nestjs/cli는 다시 삭제한다.
문제 없이 진행된다면 키보드 화살표를 움직여 yarn 으로 이동해 엔터를 눌러 설치를 이어간다
nestjs 설치가 완료되었다면 Successfully를 확인할 수 있다!
Nest.js 의 폴더구조
nest.js를 설치하면 여러가지 폴더가 자동으로 설치되어 있는데,
이런 nest.js의 초기 구조를 보일러 플레이트 라고 부른다.
- main.ts : 어플리케이션의 진입점. Nest.js을 설치하면 이 파일에서 초기화하고 실행한다.
- app.controller.ts : 컨트롤러 파일로 요청을 받아 처리하고 응답을 반환한다.
- app.module.ts : 모듈 파일로 기능별로 모듈을 생성 관리 할 수 있다.
- app.service.ts : 서비스 파일로 비즈니스 로직을 처리하며, 컨트롤러에서 사용된다.
'프레임워크 및 라이브러리 > Nest.js' 카테고리의 다른 글
[Nest.js] Exception filters (0) | 2024.04.16 |
---|---|
[Nest.js] Modules (0) | 2024.04.15 |
[Nest.js] Providers (0) | 2024.04.14 |
[Nest.js] Controllers (0) | 2024.04.12 |