1. Backend Framework (백엔드 프레임워크)
- 백엔드 프레임워크는 화면에 보이지 않는 백의 일을 처리하는 프레임워크다.
- 화면에 표기를 하기 위한 데이터를 DB에 가져와서 웹이나 모바일에 보내주거나 로그인의 유효성을 검사하여 유저 ㅈ어보를 알려주는 등의 역할을 한다.
- 즉, 서버용 어플리케이션을 제작하는 도구이다.
2. Frontend Framework (프론트엔드 프레임워크)
- 화면에 보이는 웹/앱을 제작하기 위한 도구이다.
3. Node.js 의 프레임워크
1) Express.JS
- Express는 웹 및 모바일 어플리케이션 개발을 위한 MVC(Model-View-Controller) Node.js 프레임 워크이다.
- 기존 Node.js 기능에 추가되는 얇은 기본 웹 애플리케이션 기능을 제공하는 라우팅 라이브러리 세트이다.
- 고성능에 중점을 두고 강력한 라우팅과 HTTP 도우미 (redirection, cacheing 등)를 지원한다.
- 14개 이상의 템플릿 엔진, 컨텐츠 협상 및 응용 프로그램을 빠르게 생성하기 위한 실행 파일을 지원하는 뷰 시스템이 제공된다.
- 사용하기 쉬운 많은 HTTP 유틸리티 메소드, 함수 및 미들웨어가 제공되기 때문에 강력한 API를 쉽고 빠르게 작성이 가능하다.
2) Socket.io
- Socket.io는 실시간 애플리케이션 구축을 위한 빠르고 안정적인 풀 스택 프레임 워크이다.
- 실시간 양방향 이벤트 기반 통신을 위해 설계되었다.
- 자동 연결, 단절 감지, 바이너리, 멀티 플렉싱 및 룸을 지원한다.
- 간단하고 편리한 API를 가지고 있으며 모든 플랫폼, 브라우저 또는 장치에서 작동한다.
- 신뢰성과 속도에 동일하게 집중한다.
3) Meteor.JS
- 최신 웹 및 모바일 애플리케이션을 구축하기 위한 초소형 풀 스택 프레임워크이다.
- 웹, iOS, Android, 데스크탑과 호환된다.
- 연결된 클라이언트 반응형 애플리케이션, 빌드 툴 및 Node.js 및 일반 JavaScript 커뮤니티의 선별된 패키지 세트를 빌드하기 위한 주요 기술 컬렉션을 통합한다.
4) Koa.js
- 이는 Express 개발자가 구축한 새로운 웹 프레임 워크이며, ES2017 비동기 기능을 사용한다.
- Call back의 앱을 제거하고 오류 처리를 단순화하기 위해 약속 및 비동기 기능을 사용한다.
5) Sails.js
- Express에 구축된 Node.js를 위한 실시간 MVC 웹 개발 프레임 워크이다.
- MVC 아키텍처는 Ruby on Rails와 같은 프레임 워크와 유사하다.
- 최신의 데이터 중심 스타일의 웹 앱 및 API 개발을 지원한다는 점에서 다르다.
6) MEAN.io
- MEAN은 Express에서 빌드 된 오픈 소스 기술 모음으로, 처음부터 동적 웹 응용 프로그램을 구축하기 위한 End-to-End 프레임 워크를 제공한다.
- 클라우드 네이티브 풀 스택 JavaScript 애플리케이션을 작성하기 위한 시작점을 제공한다.
7) Nest.JS
- 효율적이고 안정적이며, 확장 가능한 서버 측 애플리케이션을 구축하기 위한 REST API 프레임 워크이다.
- 최신 Javascript를 사용하여 TypeScipt로 빌드 된다.
- OOP(Obeject Oriented Programming), FP(Functional Programming) 및 FRP(Functional Reactive Programming)의 요소를 결합한다.
- 엔터프라이즈 급 응용 프로그램을 작성하기 위한 완벽한 개발 키트로 패키지화된 기본 제공 응용 프로그램 아키텍처이다.
- 내부적으로 Express를 사용하는 한편 광범위한 다른 라이브러리와의 호환성을 제공한다.
8) Loopback.io
- LoobBaack은 코딩이 거의 없이 동적 엔드투엔드 RSET API 작성이 가능한 확장성이 좋은 프레임워크이다.
- 쉽게 모델을 설정하고 REST API를 작성할 수 있다.
- 쉬운 인증 및 권한 설정을 지원하며 모델 관계 지원, 다양한 백엔드 데이터 저장소, 임시 쿼리 및 애드온 구성요소가 지원된다.
9) Keystone.JS
- Express 및 MongoDB에 구축된 가볍고 유연하며 확장 가능한 오픈소스 풀스택 프레임 워크이다.
- 데이터베이스 기반 웹 사이트, 응용 프로그램 및 API를 구축하도록 설계되었다.
- 동적 경로, 양식 처리, 데이터베이스 빌딩 블록(ID, 문자열, 부울, 날짜 및 숫자) 및 세션 관리를 지원한다.
- 데이터를 쉽게 관리할 수 있도록 사용자 정의 가능한 관리 UI가 제공된다.
10) Feathers.JS
- 최신 어플리케이션을 작성하기 위한 실시간, 최소 및 마이크로 서비스 REST API 프레임 워크이다.
- 확장 가능한 REST API 및 실시간 웹 어플리케이션을 처음부터 쉽게 작성할 수 있도록 설계된 다양한 도구 및 아키텍처이며 Express에도 구축되어 있다.
- 어플리케이션 프로토 타입을 신속하게 구축하고 빠르게 실시간으로 백엔드를 제작할 수 있다.
- Angular, React, VueJS 등 모든 클라이언트 측 프레임 워크와 쉽게 통합된다.
- 또한 앱에서 인증 및 권한 부여/구현을 위한 유연한 옵션 플러그인을 지원한다.
11) Hapi.JS
- 애플리케이션과 서비스를 구축하기 위한 단순하면서도 풍부하고 안정적인 MVC 프레임워크이다.
- 인프라 구축과 재사용 가능한 애플리케이션 로직을 작성하기 위한 것이다.
- 구성 중심이며, 입력 유효성 검사, 캐싱, 인증 및 기타 필수 기능과 같은 기능을 제공한다.
12) Strapi.io
- Strapi는 웹 사이트/앱 또는 모바일 어플리케이션을 위한 효율적이고 안전한 API를 개발하기 위한 빠르고 강력하며, 기능이 풍부한 MVC 프레임 워크이다.
- 안전하며 플러그인 지향적이고 프론트엔드와 무관하다.
13) Restify.JS
- 연결 스타일 미들웨어를 활용하는 Nodejs REST API 프레임 워크이다.
- 프로덕션 환경에서 대규모로 사용할 수 있는 의미 있는 올바른 RESTful 웹 서비스를 구축할 수 있도록 최적화되어 있다.
- 특히 검사 및 성능에 적합하며, 수많은 거대한 웹서비스를 지원하는 데 사용되고 있다.
14) Adonis.JS
- 단순하고 안정적이며 확장 가능한 서버 측 웹 애플리케이션을 처음부터 작성할 수 있는 안정적인 에코 시스템을 제공하는 MVC 프레임 워크이다.
- 모듈식으로 설계되어 있으며, 애플리케이션의 빌딩 블록인 여러 서비스 제공 업체로 구성된다.
- 일관되고 표현적인 API를 통해 풀 스택 웹 애플리케이션 또는 마이크로 API 서버를 구축할 수 있다.
참고) https://dora-guide.com/nodejs-net-framework/
4. Node.js의 라이브러리
- 필수적인 주요 npm 라이브러리로는 nodemon, express, Path, request, chalk, hbs 등이 있다.
- 위는 https://smilehugo.tistory.com/entry/nodejs-npm-libraries-you-should-know 를 참고하길 바람
- 아래는 Node.js의 다양한 라이브러리를 정리해놓은 글이다. 추후에 참고하도록!
참고) https://novemberde.github.io/node/2017/11/05/Node.JS_Library.html
'사이드 프로젝트 > 개발몰입과정[2021_SUMMER]' 카테고리의 다른 글
2주차 개념 스터디 - HTTP (2) (0) | 2021.08.11 |
---|---|
2주차 개념 스터디 - HTTP (1) (0) | 2021.08.09 |
1주차 개념 스터디 - 'REST API'란 무엇인가 (0) | 2021.07.31 |
1주차 개념 스터디 - 라이브러리와 프레임워크의 차이 (0) | 2021.07.31 |
1주차 개념 스터디 - 정적 타입 언어 vs 동적 타입 언어 (0) | 2021.07.31 |
댓글