NestJS 파트 — 1
NestJS란?
NestJS는 효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임워크입니다.
프로그레시브 JavaScript를 사용하고 TypeScript로 구축되어 완전히 지원하며 OOP(Object Oriented Programming), FP(Functional Programming) 및 FRP(Functional Reactive Programming)의 요소를 결합합니다.
NestJS는 Express와 같은 강력한 HTTP 서버 프레임워크를 사용합니다.
NestJS는 이러한 일반적인 Node.js 프레임워크(Express/Fastify) 이상의 추상화 수준을 제공하고 해당 API를 개발자에게 직접 노출합니다. 이를 통해 개발자는 기본 플랫폼에서 사용할 수 있는 수많은 타사 모듈을 자유롭게 사용할 수 있습니다.
NestJS가 필요한 이유
- NestJS는 개발을 단순화하는 프레임워크입니다. NestJS에는 자체 규칙이 있으며 백엔드 개발만을 위한 것이 아닙니다. 프레임워크는 마이크로서비스 아키텍처를 제공합니다. 가볍고 단순하며 오픈 소스입니다.
- TypeScript를 활용합니다.
- 사용하기 쉽고, 배우고, 마스터하기
- 강력한 명령줄 인터페이스(CLI)로 생산성을 높이고 개발을 쉽게 할 수 있습니다.
- 상세하고 잘 관리된 문서
- 활성 코드베이스 개발 및 유지 관리
- 오픈 소스입니다
- TypeORM, Mongoose, GraphQL, Logging, Validation, Caching, WebSockets 등과 같은 일반적인 기술 및 개념과 쉽게 통합하는 데 도움이 되는 수십 개의 중첩별 모듈 지원
- 쉬운 단위 테스트.
- 모놀리식 및 마이크로서비스 애플리케이션 지원
- 대규모 엔터프라이즈 애플리케이션을 구축하고 확장하는 데 사용할 수 있습니다.
- 빠르고 효율적인 개발 프로세스.
- 확장성이 뛰어나고 유지 관리가 쉬운 애플리케이션.
- 지난 3년 동안 가장 빠르게 성장한 Node.js 프레임워크.
- 대규모 커뮤니티 및 지원 시스템.
- 최고의 Node.js, TypeScript 및 방탄 아키텍처 패턴을 사용합니다.
- NestJS는 개발자가 모듈, 서비스 및 컨트롤러를 도입하여 특정 아키텍처를 사용하도록 하여 애플리케이션이 확장 가능하고 테스트 가능성이 높으며 다른 Node.js 프레임워크와 달리 느슨하게 결합되도록 합니다.
- 요청 및 응답을 처리하는 컨트롤러 .
- 코드를 구조화하고 기능을 논리적이고 재사용 가능한 것으로 분리하기 위한 모듈 입니다.
- 복잡하고 핵심적인 논리를 관리하는 공급자 또는 서비스 .
운영 체제에 Node.js(버전 >= 12, v13 제외)가 설치되어 있는지 확인하십시오.
시작하기
npm install -g 명령을 사용하여 전역적으로 CLI를 설치합니다.
npm install -g @nestjs/cli
Nest CLI를 사용하면 새 프로젝트를 설정하는 것이 매우 간단합니다. 다음 명령을 사용하여 새 Nest 프로젝트를 만들 수 있습니다.
nest new project-name
설치 프로세스가 완료되면 다음 명령을 실행하여 애플리케이션을 시작할 수 있습니다.
npm run start
개발 모드에서 애플리케이션을 실행하려면 다음 명령을 사용하십시오.
npm run start:dev
컨트롤러의 목적은 애플리케이션에 대한 특정 요청을 수신하는 것입니다.
라우팅 메커니즘은 어떤 컨트롤러가 어떤 요청을 받는지 제어합니다.
종종 각 컨트롤러에는 둘 이상의 경로가 있으며 다른 경로는 다른 작업을 수행할 수 있습니다.
CLI를 사용하여 컨트롤러를 생성하려면 다음 명령을 실행하기만 하면 됩니다.
nest g controller name
첫 번째 서비스 만들기
공급자는 NestJS의 기본 개념입니다.
많은 기본 NestJS 클래스는 서비스, 리포지토리, 팩토리, 도우미 등과 같은 공급자로 취급될 수 있습니다. 주요 아이디어는 종속성으로 주입하는 기능입니다.
CLI를 사용하여 서비스를 생성하려면 다음 명령을 실행하기만 하면 됩니다.
nest g service name
첫 번째 모듈 만들기
모듈은 @Module() 데코레이터로 주석이 달린 클래스입니다.
@Module() 데코레이터는 NestJS가 애플리케이션 구조를 구성하는 데 사용하는 메타데이터를 제공합니다.
각 애플리케이션에는 적어도 하나의 모듈인 루트 모듈이 있습니다.
루트 모듈은 NestJS가 애플리케이션 그래프를 구축하는 데 사용하는 시작점입니다. NestJS가 모듈과 공급자 관계 및 종속성을 해결하는 데 사용하는 내부 데이터 구조입니다. 구성 요소를 구성하는 효과적인 방법으로 모듈을 강력하게 권장한다는 점을 강조하고 싶습니다. 따라서 대부분의 애플리케이션에서 결과 아키텍처는 각각 밀접하게 관련된 기능 집합을 캡슐화하는 여러 모듈을 사용합니다.
CLI를 사용하여 모듈을 생성하려면 다음 명령을 실행하기만 하면 됩니다.
nest g module name
결론
이 블로그에서는 모듈, 서비스 및 컨트롤러를 만드는 방법, 서버를 실행하는 방법 및 몇 가지 핵심 개념과 함께 프로젝트를 만드는 방법을 배웠습니다.
이 블로그의 다른 부분을 기대해 주세요.
저자:- Lavesh Katariya
에서 우리를 따르라https://www.linkedin.com/company/brilworks
문의하기https://www.brilworks.com/contact-us/

![연결된 목록이란 무엇입니까? [1 부]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































