Summry
본 문서에서는 Node js의 프레임워크들을 비교 정리한다.
send me email if you have any questions.
Express.js
- 프레임워크 중 점유율 1위이다.
- 정보가 많고 이용자도 많지만, 속도가 느려 고성능(하이 퍼포먼스)을 요구하는 개발에 부적합하며 js의 비동기 처리 기능, 제너레이터 함수, async/await에 대응하지 않아 수정이 필요하다.
Koa.js
- 제작자가 개발하는 실질적인 express.js 다음 버전이다.
- express.js 보다 속도가 빠르고 Fastify보다 점유율이 높다. v1에서 제너레이터 함수, v2에서 async/await지원한다. (express보다 현대적인 개발환경을 지원)
Fastify
- 프레임워크 중 성능이 가장 높다.
- 점유율이 낮고 정보도 적지만, 성능이 가장 좋고, async/await도 대응한다. JSON Schema에 의한 검증 기능도 있고, 퍼포먼스(성능)을 강조하다 보니 비교적 세밀한 기능이 많다.
Meteor
- 표준화와 즉시 사용가능함을 철학으로 삼는다.
- 서버, 모바일, 웹, 데스크톱 응용프로그램을 구축하는데 필요한 통합 도구를 제공한다.
- Angular 또는 React와 통합되어 백 엔드와 프론트 엔드의 응용프로그램을 연결한다.
- 엔지니어에게 많은 자유를 쥐어주지 않지만 많은 기초 작업을 간소화한다.
- 주요 특징: 데이터 동기화, 즉시 사용 가능한 통합, 빌드 자동화
Loopback
- REST API 프레임워크의 대표.
- 확장성이 뛰어난 모듈러 프레임워크.
- API를 쉽고 빠르게 작성할 수 있도록 고안됨.
- 사용자 인증 및 권한 작성에 적합.
- 주요 특징: REST API생성, API 탐색
정리
어떤 프레임워크를 사용해야할 명확한 이유가 없다면 express를 사용하는 것을 추천한다.
2020 State Of JS에 따르면 express는 점유율에 이어 만족도도 최상위권이다. 다른 프레임워크와 비교했을 때 뛰어나다고는 할 수 없지만, express는 단순하고 사용자도 많기 때문에 자료 또한 많다. 그렇다고 성능이 뒤처지는것도 아니다. 같이 협업할 개발자가 익숙하지 못해서 새로 공부하거나 리서치에 시간을 너무 많이 사용하지 않아도 될 것이다.
Reference
Node.js 프레임워크 특징 비교 - noahshin__11
NodeJS - 프레임 워크 비교 - Simple is Beautiful.
Express를 사용해야 할 이유 (1) - 생태계 조사 - Seongbin Kim
PREVIOUSspring boot CORS 처리