-
Notifications
You must be signed in to change notification settings - Fork 0
NestJS를 선택한 이유
김영현 edited this page Oct 29, 2024
·
1 revision
이번 글에서는 이번 프로젝트에서 NestJS
를 선택한 이유를 설명하도록 하겠습니다.
NestJS
는 Node.js
에 기반을 둔 웹 API 프레임워크로써 Express 또는 Fastify 프레임워크를 래핑하여 동작합니다. 기본으로 설치하면 Express를 사용합니다.프로그래밍 언어는 타입스크립트를 기본으로 채택하고 있어 타입스크립트가 가진 타입시스템의 장점을 누릴 수 있습니다.
- TypeScript 지원
- TypeScript를 기본으로 하여 타입 안정성을 보장합니다
- 개발 시 오류를 조기에 발견할 수 있습니다
- IDE의 자동 완성과 타입 추론 기능을 최대한 활용할 수 있습니다
- 구조화된 아키텍처
- NestJS는 Provider, Module, Controller, Service, Middleware 등의 요소를 제공하며, 이들을 잘 조합하여 구조화된 아키텍처를 구축할 수 있습니다.
- 구조화된 아키텍처 덕분에 개발자들이 한방향으로 협업을 하는데 용이하며, 프로젝트 규모가 커질수록 코드의 가독성과 유지보수성을 높여줍니다.
- 테스트 용이성
- Jest를 기본 테스트 프레임워크로 채택하고 있습니다.
- 단위 테스트와 E2E 테스트를 위한 도구를 기본 제공합니다.
- 테스트 코드 작성이 쉽고 직관적입니다.
- 데코레이터와 의존성 주입
- NestJS는 의존성 주입을 프레임워크 차원에서 제공하여 테스트와 코드 관리가 용이하며, 애플리케이션의 결합도를 낮추고 유지보수성을 높여줍니다.
- 데코레이터를 통해 기능을 선언적으로 표현 가능하며
@UseInterceptors
,@UseGuards
등을 통해 관심사 분리를 할 수 있습니다.
https://velog.io/@zunzero/Nest.js-%EA%B3%B5%EC%8B%9D%EB%AC%B8%EC%84%9C-%EC%A0%95%EB%A6%AC
https://velog.io/@zunzero/Nest.js-%EA%B3%B5%EC%8B%9D%EB%AC%B8%EC%84%9C-%EC%A0%95%EB%A6%AC
web12-MafiaCamp