菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
0
0

用于构建API和微服务的流行JavaScript框架

原创
05/13 14:22
阅读数 254

课程推荐:Java开发工程师--学习猿地精品课程

近年来,随着jQuery、JSON(JavaScript的对象表示法)、MongoDB、ES6 Generators的广泛使用,JavaScript发展出了许多易于使用、并能与多种编程语言相集成的框架、库和工具。其中包括:NodeJS、Angular、React、Vue、Meteor、Google Polymer、Mercury、以及Backbone等。而作为后端开发人员中最常用的编程语言,JavaScript通过如下优势,为软件开发人员节省了大量的资源和时间:

1.客户端处理能力

2.易于学习的语法

3.简单且易于实现

4.易于调试和测试

5.能够快速执行

6.易于扩展到网页上

7.带有内置JavaScript的浏览器

8.提供基于事件的编程

9.提供动态内容

基于上述优势,根据GitHub(拥有全球数百万开发用户的最大存储库)的统计,JavaScript是产生打开和拉取请求(即:编写的代码量)数量最多的编程语言。

下面,我们将讨论那些用于构建API和微服务的JavaScript流行框架。注意,这里说的API是一种通信模式,而微服务则是一种架构模式。我们应当区别对待。

用于构建API的十大流行JavaScript框架

1.Hapi

作为一种非常强大的JavaScript框架,Hapi通过最小的开销和各种开箱即用(out-of-box)的功能,来构建安全、鲁棒且可扩展的API。凭借着全球性的开发人员社区,Hapi框架拥有完善的插件系统和如下关键功能。

主要特征

可实现缓存
具备错误处理能力
提供日志
带有输入验证
提供基于配置的功能
作为一种配置驱动的模式,Hapi具有在特定IP上创建服务器的独特能力。Paypal和Disney就在它们的应用中用到了Hapi的此类能力。

  1. Express

由Node核心项目团队成员--TJ Holowaychuk构建的Express,是一个快速、且不受限制的简约式JavaScript框架。它可以为Web和移动应用程序提供一系列强大的功能。在庞大的开发人员社区的支持下,它的所有核心功能得到了不断更新与迭代。

Express支持各种程序包,以及诸如Pug、Mustache、EJS等模板引擎。Express的API能够充当HTTP服务器,通过配置路由,来实现在前端和数据库之间发送/接收各种请求。

  1. Restify

该Web服务框架利用连接样式中间件(connect style middleware),来构建REST API。Restify对构建正确语义的RESTful Web服务进行了优化,可供生产环境直接使用。此外,进行了性能优化的Restify,还可以被用于一些大型Node.js的部署。

主要特征

语义正确
可调试
面向生产环境
目前,用到Restify的知名公司包括:Netflix、Pinterest、Napster、以及npm等。

  1. Sails

Sails框架以使用可扩展性的、面向服务的架构,来构建数据驱动型API而闻名。它与大家熟悉的Ruby on Rails等MVC模式框架非常类似。Sails可以在几周内为您构建出实用的、可用于生产环境的Node应用程序。

用户可以通过Sails提供的数据驱动式API,来开发聊天应用、仪表板、以及多人游戏等软件。同时,Sails能够使用Express来处理Node上的HTTP请求,并使用waterline进行各种与对象相关(object-related)的数据库映射。

主要特征

自动生成的REST API
适用于任何数据库
前端透明
可轻松地集成Web套接字
提供专业的支持
完全由JavaScript编写
目前,用到Sails的知名公司包括:Microsoft、WikiJobs、Philips、DXL、Scout、MOBOOM、以及broadsoft等。

  1. Loopback

Loopback是一种用于构建API和微服务的高度可扩展性JavaScript(包括Node和TypeScript)框架。它允许用户创建出能够与任何类型Web客户端协同的,并可以轻松地桥接到后端资源的API。

作为一种开放源代码的框架,Loopback允许那些具有最少或几乎没有编程背景的用户创建动态的REST API。由于默认使用的是widget-API资源管理器,因此它也能协助创建SDK和API文档。

主要特征

提供由OpenAPI Spec驱动的REST API
具有高度可扩展性
对GraphQL支持
支持Swagger(一种Rest API)
提供更好的用户管理策略
提供第三方登录和存储服务
提供模型关系支持(Model-relation-support)

  1. Koa

由Express的团队创建的NodeJS下一代Web框架--Koa,旨在为API和Web应用程序提供更具表现力、且功能更强大的基础架构。值得注意的是,Koa要求NodeJS的版本至少为0.11或更高。

主要特征

Koa能够提供那些从未出现在浏览器中的ECMAScript方法
允许在不使用回调的情况下,大幅提高错误的处理能力
提供了一套“优雅”的方法,来快速编写服务器端程序
提供更多的自定义选项
通过支持syn和await关键字,来管理各种代码

  1. Total.js

Total.js是一个开放、稳定且免费的JavaScript框架,可用于构建快速、且功能强大的REST服务、网站和实时应用。TotalJS能够与Angular、Polymer、Backbone、Bootstrap、以及其他客户端JavaScript框架完全兼容。

值得一提的是,Total.js Eshop是一个针对移动设备,进行了用户界面优化的版本,所有高级会员都可以下载到该版本。

文章来自:https://developer.51cto.com/art/202011/630604.htm

发表评论

0/200
0 点赞
0 评论
收藏
为你推荐 换一批