정화 코딩
[Node.js] NestJS이란? 본문
NestJS란?
Nest (NestJS)는 효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기위 한 프레임 워크이다. 프로그레시브 JavaScript를 사용하고 TypeScript로 빌드된다.
Nest JS 는 내부적으로 어떻게 구성되었나요?
내부적으로 Nest는 Express (기본값)와 같은 강력한 HTTP 서버 프레임 워크를 사용하며 선택적으로 Fastify를 사용하도록 구성 할 수도 있다.
Nest는 Express (기본값)와 같은 강력한 HTTP 서버 프레임 워크를 사용한다. 즉, Nest는 Express를 토대로 만들어졌다.
Nest JS 의 철학
Nest는 개발자와 팀이 고도로 테스트 가능하고 확장 가능하며 느슨하게 결합되고 유지 관리가 쉬운 애플리케이션을 만들 수 있는 즉시 사용 가능한 애플리케이션 아키텍처를 제공한다.
Nest JS 공식 문서
Node.js 설치
우선 Node.js를 설치해야 한다. https://nodejs.org/en/에서 설치할 수 있고, 제대로 설치되었는지 확인하려면 터미널에 "node -v"라고 쳐보면 된다.
NestJS CLI로 NestJS 시작하기
NestJS CLI를 이용하면 NestJS 프로젝트를 간단히 시작할 수 있다. (NestJS 설치 확인은 "nest -v"로) 패키지 매니저로 npm과 yarn 중에 하나를 선택할 수 있다.
$ npm i -g @nestjs/cli # nestJS CLI 설치
$ nest new project-name # project-name라는 이름의 폴더로 프로젝트 생성 (npm 선택)
위와 같이 명령어를 작성하면 새 프로젝트 디렉터리가 생성되고 초기 핵심 Nest 파일 및 지원 모듈로 디렉터리가 채워져 프로젝트의 기본 구조가 생성된다.
$ mkdir nestjs-board-app
$ cd nestjs-board-app
$ nest new ./ (npm 선택) # 이 폴더 안에 기본 구조 생성
NestCLI로 생성한 프로젝트 기본 구조
- eslintrc.js: 개발자들이 특정한 규칙을 가지고 코드를 깔끔하게 짤 수 있게 도와주는 라이브러리. 타입스크립트를 쓰는 가이드 라인 제시, 문법에 오류가 나면 알려주는 역할 등
- prettierrc: 주로 코드 형식을 맞추는데 사용하는 코드 포맷터 역할. (ex. 작은따옴표를 사용할지 큰 따옴표를 사용할지, Indent 값을 2로 줄지 4로 줄지 등)
- nest-cli.json: nest 프로젝트를 위해 특정한 설정을 할 수 있는 json 파일 (ex. source root)
- tsconfig.json: 어떻게 타입스크립트를 컴파일 할지 설정
- tsconfig.build.json: tsconfig.json의 연장선상 파일이며 , build를 할 때 필요한 설정들 "excludes"에서는 빌드할 때 필요 없는 파일들 명시
- package.json: 프로젝트 이름, 버전, 설명, 프로젝트 시작 명령어, 사용된 라이브러리 등 작성
- src 폴더: main.ts: 어플리케이션을 생성하고 실행 (AppModule: 가장 최상위 모듈)
'Web Development' 카테고리의 다른 글
[Node.js] NestJS 개발 환경 세팅하기 (0) | 2024.10.11 |
---|---|
[Spring] Spring Boot 시작해보기 (2) | 2024.09.22 |
[Back-end] AWS EC2 인스턴스를 이용한 백엔드 배포 (0) | 2024.09.07 |
[Node.js] Google OAuth 2.0으로 로그인/로그아웃 구현 (0) | 2024.08.02 |
[Node.js] jwt 토큰으로 회원가입/로그인/로그아웃 구현 (0) | 2024.07.22 |