NodeJS - (6) : nest.js 소개

­이승환·2022년 2월 17일
0

Problem


  • REST API 기능 구현
  • 각 과제별 이종 데이터베이스 구축
  • 검색엔진, 그래프 데이터베이스 REST API 구현
  • admin, user 등 인증, 인가 기능 구현

과제

{ ... }

필수 개발스택 고려사항

REST(RESTful) 하게 구현

  • uri(resource) + verb(Http Method) + Represnetation(HTTP Message Pay Load)
  • Server - Client
  • Stateless
  • Cacheable
  • Layered System
  • Uniform Interface

과제 리소스

  • 짧은 기간의 단기목표
  • 개발 인력 및 개발 스택

벤치마킹

NestJS

Adidas, Capgemini, Decathlon, Autodest, Neo4j...

trend

Solution


.NET

  • 언어 자체로는 매우 훌륭하고, 람다식, 포인터를 직접 활용이 가능
  • var 타입도 지원 가능
  • 라이브러리가 풍부하지 않음 -> 탈락

SPRING

  • 국내에서 가장 많이 활용, 레퍼런스 코드가 매우 많음
  • 네이버, 카카오, 우아한 형제들, 쿠팡 및 SI 기업들에서 주로 활용
  • 매우 거대한 SPRING 세계관
  • 자바라는 언어가 단점이 될 수 있음
  • spring boot가 나오면서 의존성 패키지 부분은 그래도 그나마 상당 부분 많이 해결 됨
  • 많은 오픈소스가 JVM에서 동작하는 만큼 스프링 생태계에서 활용이 가능함 (Kafka, RabbitMQ, ElasticSearch, MongoDB )
  • 복잡하고 공부할게 굉장히 많음

EXPRESS || NestJS

  • npm 35만개 이상의 미들웨어 존재
  • 이벤트 드리븐 방식
  • 타입스크립트 활용
  • swagger 문서화가 굉장히 쉬움
  • validation 또한 굉장히 쉬움
  • 자유로운 라이브러리와 아키텍쳐 활용이 가능함
  • Angular, React, Vue와 동일한 철학으로 백엔드 구성
  • typescript로 Spring 형태와 유사하게 구성 가능
  • 사내 PaaS와 관련해서 이미지 버전 관리 가능
  • 백업해줄 수 있을것 같음

Conclusions


  • Spring || Nest JS

profile
Mechanical & Computer Science

0개의 댓글