NestJS/NestJS 튜토리얼 초급

[NestJS 튜토리얼 초급] 0. NestJS 튜토리얼 초급 소개

iKay 2023. 8. 14. 16:11
반응형

 

NestJS를 사용해야 하는 이유

 

NestJS는 NodeJS 런타임에서 구동되는 서버 사이드 애플리케이션을 구축하기 위한 프레임워크입니다. NestJS 프레임워크를 학습하기 전, NestJS를 사용하면 어떤 점이 좋은지를 우선 소개해 드리겠습니다. 

 

1. TypeScript 기반

NestJS는 TypeScript를 주 언어로 사용합니다. TypeScript는 정적 타입 언어로 런타임에 발생할 수 있는 오류를 사전에 개발 과정에서 방지할 수 있고 코드의 가독성을 높여줍니다. 이에 따라 코드 유지 보수가 용이해지며, 협업과 확장성이 향상됩니다.

TypeScript 언어는 "lingua franca(공통어)"가 되었다고 해도 과언이 아닙니다. 누구나 TypeScript를 쉽게 사용할 수 있기 때문에 NestJS를 사용하는 데 부담이 없을 것입니다.

 

2. 모듈 구조

NestJS는 모듈 기반 아키텍처를 채택하고 있습니다. 이는 애플리케이션을 기능 단위로 분리하여 개발 및 유지 보수를 용이하게 해줍니다. 각 모듈은 독립적으로 작동하며 필요한 모듈만 가져와 조합할 수 있습니다. 

 

3. 의존성 주입(Dependency Indejction)

의존성 주입은 코드의 재사용성과 유지 보수성을 향상시키는 중요한 개념입니다. NestJS는 의존성 주입을 기본적으로 지원하며, 이를 통해 컴포넌트 간의 느슨한 결합을 유지하고 테스트 용이성을 높일 수 있습니다.

 

4. HTTP 와 WebSocket 지원

NestJS는 Express나 Fastify와 같은 강력한 HTTP 서버 프레임워크 위에서 작동합니다. 이를 통해 RESTful HTTP API, GraphQL 같은 다양한 통신 프로토콜을 구현할 수 있습니다. 또한 WebSocket을 통한 양방향 통신도 쉽게 구현할 수 있습니다.

 

5. Middleware 와 Interceptor

NestJS는 미들웨어와 인터셉터를 사용하여 요청 및 응답을 가로채고 변형시키는 기능을 제공합니다. 이를 활용하여 로깅, 인증, 데이터 변환 등의 작업을 더욱 쉽게 수행할 수 있습니다.

 

6. 다양한 ORM(객체-관계 매핑) 지원 

NestJS는 다양한 ORM 라이브러리와의 통합을 지원하여 데이터베이스 작업을 편리하게 수행할 수 있습니다. TypeORM을 사용하면 TypeScript 클래스를 데이터베이스 엔터티로 매핑할 수 있어 개발 생산성을 높여줍니다.

 

7. 테스트 용이성

NestJS는 테스트를 위한 다양한 도구와 기능을 제공합니다. 의존성 주입과 모듈화된 구조를 활용하면 단위 테스트와 통합 테스트를 보다 쉽게 작성할 수 있습니다.

 

8. 풍부한 커뮤니티와 문서

NestJS는 테스트를 위한 다양한 도구와 기능을 제공합니다. 의존성 주입과 모듈화된 구조를 활용하면 단위 테스트와 통합 테스트를 더욱 쉽게 작성할 수 있습니다.

 

 

튜토리얼 목표

NestJS 튜터리얼 초급 강의는 간단하지만, 실용적인 웹 커뮤니티 게시판 API를 직접 만들어 봄으로써 NestJS 프레임워크 개발환경을 스스로 구축할 수 있고, 프레임워크를 어떻게 사용하는지를 익히는 것을 목표로 합니다. 

 

 

튜토리얼 대상

NestJS 튜토리얼 초급을 웹 커뮤니티 게시판을 만들어 보고 싶은 초급 백엔드 개발자 혹은 백엔드 개발자가 아닐지라도 NestJS 프레임워크를 학습하고 싶은 모든 초보자를 대상으로 만들 예정입니다. 

 

사전지식

  • NodeJS 기초 
  • Express 사용 경험
  • JavaScript 또는 TypeScript 사용 경험 (TypeScript 사용 경험이 없어도 무방합니다.)

 

튜토리얼 목차

튜토리얼 목차는 다음과 같이 12 챕터로 구성될 예정입니다.

 

  1. NestJS 튜토리얼 초급 소개
  2. NestJS 개발 환경 갖추기
  3. NestJS Controller 알아보기
  4. NestJS Provider 알아보기
  5. NestJS Module 알아보기
  6. NestJS Middleware 알아보기
  7. NestJS Interceptor 알아보기
  8. NestJS Exception Filter 알아보기
  9. NestJS Pipe 알아보기
  10. NestJS Guard 알아보기
  11. NestJS Custom Route Decorator 알아보기
  12. NestJS 튜토리얼 초급 마무리 하기

 


 

NodeJS 백엔드 프레임워크로써 NestJS가 큰 인기를 얻고 있지만 초급 튜토리얼 강의가 현재 많지 않은 것 같고 NestJS를 좋아하시는 분들이 많아졌으면 하는 마음에 튜토리얼 초급 강의를 기획하기로 결심했습니다.

 

NestJS Korea 커뮤니티 Discord 도 많이 활성화되어 있으니 많은 관심과 참여 부탁드려요.

 

반응형