前言
不多说,直接,盘点下现在的还没有凉的Node.js框架
下图是 2016 年 Node.js 开发框架的发展势头排名(基于 Github 上 2016 年增加的 star 数)
image.png关于上图的更多细节可查看 2016 JavaScript Rising Stars
思考
当然啦那些仅仅是单方面的盘点,不能说就代表着所有人的想法,下面,我就根据我自己的微小见解来说下我觉得ok的框架。
Express
Express是一个轻量Web框架,能够建立大型或小型轻量的Web应用,同时Express也是 Node.js 最基础的后端框架,出现的时间非常早,现在有非常多的中间件,有非常成熟的社区,同时Express上手非常简单。
Express与NodeJS Angular.js和MongoDB合称为Mean全栈开发工具
image.png
Koa
koa 是由 Express 原班人马打造的,致力于成为一个更小、更富有表现力、更健壮的 Web 框架。
koa整体的社区活跃没有Express高,至于很多人说这个会是下一代标准,我没有仔细了解,不多说,反正有进步就是好的,也比较容易上手。
Meteor
Meteor 是一个有点 ‘异类’ 的全栈框架。首先它前后端通信使用 WebSocket 而不是 HTTP,所以实时性很好,但它不是一个 REST 框架,虽然可以通过简单的改造,提供 RESTful API;同时 Meteor 绑定了 MongoDB。
Feathers.JS
构建与 Express4.0 基础之上,Express 的那些中间件都能在 Feathers 里直接使用。Feathers 另外特点是兼容 WebSocket 的实时性和 HTTP 的 REST。不过注意用户鉴权默认使用JWT,而不是传统的 session。我觉得JWT更适合大一点的项目,例如有移动端需要调用 API。
KeystoneJS
是一个 CMS 框架,有点像 PHP 的Drupal,功能全面,适合做后台管理,内容管理。自带的用户管理功能很方便。
LoopBack
是由 StrongLoop 公司基于 Express 开发的开源框架。这是一个大而全的企业级框架,适合有多种终端,还有与其他后端服务集成的场景。
hapi
hapi(来自沃尔玛团队)是 用来开发 RESTful API 服务的框架,适合后端是微服务的架构。很灵活,hapi 非常适合当下快速迭代的开发方式。
阿里巴巴开源 (据说不是一个 KPI 开源项目) 的
Egg.js
号称为企业级框架和应用而生。它有点像 Feathers,但是基于 Koa;另外不像 Feathers,Egg 没有自带认证功能,使用 cookie/session 鉴权。更多细节可以看是一个不错的企业级 Node.js 框架。理念先进,功能也全。
Gatsby , Hexo
静态网站生成。适合做文档、博客类网站。比动态 web app 加载更快。Gatsby基于 React,比Hexo新,维护得更好些。
我们之前的blog就是基于Hexo构建,我感觉Hexo有更为成熟的社区。
选择
框架介绍完了,按照我的想法,一般都要遵循循序渐进原则,就是从简单到复杂,最好要有成熟的社区,踩到坑了,可以快速到网络上找到解决办法,这样才会让我们制作有成就感,假如选择小众的框架,当然,使用起来可能是更灵活,但是有坑了就比较难解决,会挫败我们制作blog的积极性,同时选择框架,最好有容易上手,使用成本越低越好。
待续。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
网友评论