2017年前端框架,工具大比拼

前年前端框架、类库、工具大比拼

2017/06/19 · 底蕴本事 · 工具, 框架, 类库

初藳出处: Craig Buckler   译文出处:蒲陶城控件   

相对来讲于JavaScript开拓职员的数额,近日JavaScript框架、类库和工具的多少宛如愈来愈多一些。截止二零一七年八月,GitHub上的快捷搜索显示,有超过110万个JavaScript项目。npmjs.org有50万个可用的软件包,每月下载量近100亿次。

正文将会研商方今可是盛行的客户端JavaScript框架、类库和工具以致它们中间的着力差别。或然本文无法告知您哪些是最棒的,可是最符合本人项指标,正是最佳的。

比较之下于JavaScript开辟人士的数目,近日JavaScript框架、类库和工具的数码就像是越来越多一些。甘休二〇一七年八月,GitHub上的快速寻觅显示,有超过110万个JavaScript项目。npmjs.org有50万个可用的软件包,每月下载量近100亿次。
  本文将议和论最近最佳流行的客商端JavaScript框架、类库和工具以致它们之间的为主差距。只怕本文不恐怕告诉你哪个是最好的,然则最符合本人项目标,正是最佳的。

类库

类库是三个有组织的机能汇集。规范的类库包罗字符串管理、日期、HTML DOM成分、事件、Cookie、动漫、互连网央浼等职能。你能够团结落成二个函数,以便选取该函数被调用时是或不是供给回到一个值。

类库常常提供大器晚成种高等其余肤浅方法,能够援助顺遂落到实处项目标细节部分。举例,Ajax平常注重于XMLHttpRequest API,只须求几行代码就落时间效益果与利益,只是浏览器之间存在细微的差异。类库提供了更简约的ajax(卡塔尔国函数,由此开拓者能够小心于更高等别的事体逻辑上。

类库能够使将支付时间减少20%,开拓者不必顾虑细节完毕。

而是也是有重疾:

  • 类库中的错误难以稳定和修补
  • 付出集团无法保障高速发布补丁
  • 补丁程序大概会修正API,引致大气代码必须改变

类库

类库是一个有集体的功力汇聚。规范的类库满含字符串管理、日期、HTML DOM元素、事件、Cookie、动漫、网络央浼等效能。你能够团结完结一个函数,以便选用该函数被调用时是或不是须求再次来到叁个值。
  类库平常提供黄金时代种高档别的空洞方法,能够支持顺遂贯彻项目标内部景况部分。比方,Ajax日常正视于XMLHttpRequest API,只供给几行代码就落时效果与利益,只是浏览器之间存在细微的差异。类库提供了更简明的ajax(卡塔 尔(阿拉伯语:قطر‎函数,因而开荒者能够小心于更加高端别的事务逻辑上。
  类库可以使将支付时间缩小20%,开拓者不必担忧细节达成。

但是也许有欠缺:

  • 类库中的错误难以稳固和修复
  • 支出公司不可能保险高速公布补丁
  • 补丁程序大概会改善API,招致大气代码必得改动

框架

框架是应用程序的骨子。它供给以特定的艺术来扩充软件设计,在某个节点上落成本身的逻辑。框架通常提供了风云、存款和储蓄和数码绑定等效果。

框架平时提供了比类库更加高档期的顺序的架空,扶植火速创设项目标前80%。

框架的劣点:

  • 假若你的应用程序超过了框架的限制,最终20%恐怕会很难
  • 框架更新特不便
  • 着力框架代码和定义相当少更新

框架

框架是应用程序的骨架。它供给以一定的不二诀要来开展软件设计,在一些节点上落实团结的逻辑。框架常常提供了事件、存款和储蓄和数据绑定等职能。
  框架经常提供了比类库越来越高档次的虚幻,协助急速创设项目标前80%。

框架的欠缺:

  • 生龙活虎经您的应用程序超过了框架的限定,最后20%或许会很难
  • 框架更新很狼狈
  • 主导框架代码和定义超少更新

工具

工具会拉拉扯扯开辟职业,但却不是类别的组成都部队分。工具饱含营造系统、编写翻译器、转译器、代码分割器、图像压缩器、计划机制等。

工具扶助完结贰个更易于的支付进程。比如,相比于CSS,多数编码者更赏识Sass,因为它提供了代码抽离、嵌套、渲染时变量、循环和函数。浏览器不领悟Sass / SCSS语法,由此在测量检验和布局从前,必须运用合适的工具将代码编写翻译为CSS。

工具

工具会扶持开拓职业,但却不是项目标组成都部队分。工具包含营造系统、编写翻译器、转译器、代码分割器、图像压缩器、安顿机制等。
工具帮忙完毕多个更易于的支出进程。比如,比较于CSS,超多编码者更爱好Sass,因为它提供了代码分离、嵌套、渲染时变量、循环和函数。浏览器不明白Sass / SCSS语法,因而在测量试验和安排从前,必须选用方便的工具将代码编写翻译为CSS。
类库、框架和工具的区分
  类库、框架和工具之间的区分比非常的小。框架能够总结叁个类库,类库能够兑现形似框架的艺术,项目中别的风流倜傥种工具都以必须的。所以没有必要肯定的区分类库、框架和工具。
JavaScript框架和类库
以下是比照流行水平举行的排序:

类库、框架和工具的分歧

类库、框架和工具之间的差异异常的小。框架可以蕴涵叁个类库,类库能够兑现近似框架的点子,项目中其余生机勃勃种工具都以供给的。所以没有要求理解的区别类库、框架和工具。

jQuery

图片 1

jQuery
类型 类库
网站 jquery.com
知识库 github.com/jquery/jquery
当前版本 3.2.1
开发人员 jQuery团队
发布日期 2006年8月
大小 最小30kb
用途 通用
使用度 72.4%的网站

乘胜WordPress、ASP.NET和局地任何框架的发布,jQuery仍然为最常用的JavaScript类库。它经过将CSS选用器引进到DOM节点检索加链来利用事件处理程序、动漫和Ajax调用,这通透到底退换了顾客端的费用。
  jQuery近来直面钟情,对于急需一丢丢JavaScript作用的类别来讲,仍为三个好选取。
优点:

  • 遍及范围小
  • 读书曲线平缓,丰硕的在线支持
  • 精简的语法
  • 轻巧开展

缺点:

  • 日增了原生API的速度花费
  • 浏览器宽容性不佳,但已拿到修改
  • 用法扁平
  • 有个别行业反驳动用

JavaScript框架和类库

以下是比照流行水平举行的排序:

Lodash 和 Underscore

图片 2

Lodash
类型 类库
网站 lodash.com/
知识库 github.com/lodash/lodash/
当前版本 4.17.4
开发人员 John-David Dalton
发布日期 2012年4月
大小 最小4kb - 24kb
用途 通用
使用度

Underscore
类型 类库
网站 underscorejs.org/
知识库 github.com/jashkenas/underscore
当前版本 1.8.3
开发人员 Jeremy Ashkenas
发布日期 2009年10月
大小 最小6kb
用途 通用
使用度

Lodash和Underscore在本节一齐谈谈。它们提供了数百个作用性的JavaScript实用程序来补偿原生字符串、数字、数组和任何原始对象方法。就算三个类库之间有部分重叠,可是不太恐怕在二个品种中并且选拔这七个类库。
  固然五个类库在客户端使用率十分低,不过却得以在服务器端的Node.js应用程序中央银行使那三个类库。
优点:

  • 小而精炼
  • 白玉无瑕的文书档案易于学习
  • 与大多数类库和框架宽容
  • 不扩展内置对象
  • 能够在顾客端或服务器上运用

缺点:

  • 稍微措施只在ES二〇一四及越来越高版本的JavaScript中可用。

jQuery

AngularJS 1.x

图片 3

AngularJS
类型 框架
网站 angularjs.org
知识库 github.com/angular/angular.js
当前版本 1.6.4
开发人员 Google
发布日期 2010年10月
大小 144KB
用途 单页应用程序
使用度

Angular是框架(或MVC应用程序框架卡塔 尔(阿拉伯语:قطر‎类列表中的第二个。前段时间最盛行的Angular版本是1.x,它接收双向数据绑定扩大HTML,同期解耦了DOM操作和应用程序逻辑。
  就算版本2(现在是本子4!卡塔尔国已经发表了,不过Angular 1.x仍在开拓中。
优点:

  • 有的大厂商正在选用的流行框架
  • 付出今世Web应用程序的缓慢解决方案
  • 是正经MEAN栈(MongoDB,Express.JS,AngularJS,NodeJS卡塔尔国的后生可畏都部队分,有繁多小说和科目可用

缺点:

  • 读书曲线陡峭
  • 大的代码库
  • 没辙升级到Angular 2.x

Angular 2.x(现在是Angular 4.x)

图片 4

Angular
类型 框架
网站 angular.io
知识库 github.com/angular/angular.js
当前版本 4.1
开发人员 Google
发布日期 2016年9月
大小 最小450kb
用途 单页面应用
使用度

Angular 2.0于二〇一四年五月发表。那是一个完全的重写,它引入了采用TypeScript成立的依据模块化组件的模型。Angular 4.0于二零一七年七月发表。
  Angular 2.x与v1版本迥然分化,也不与其他版本宽容 - 或然谷歌应该给项目起贰个例外的名字!
优点:

  • 开辟现代Web应用程序的消除方案
  • 是正规MEAN栈的一片段,纵然唯有为数不多的教程可用
  • 对于熟习静态类型语言(如C#和Java卡塔尔的开拓人士,TypeScript提供了一些优势。

缺点:

  • 上学曲线陡峭
  • 大的代码库
  • 不能从Angular 1.x升级
  • 与1.x相对来讲,Angular 2.x较难驾驭

图片 5

jQuery
类型 类库
网站 jquery.com
知识库 github.com/jquery/jquery
当前版本 3.2.1
开发人员 jQuery团队
发布日期 2006年8月
大小 最小30kb
用途 通用
使用度 72.4%的网站

随着WordPress、ASP.NET和部分别样框架的发布,jQuery仍为最常用的JavaScript类库。它经过将CSS采取器引进到DOM节点检索加链来使用事件处理程序、动漫和Ajax调用,这透顶改造了客商端的支出。

jQuery近期面前碰着尊重,对于急需少许JavaScript功效的品种来说,仍是八个好选拔。

优点:

  • 遍及范围小
  • 学学曲线平缓,丰硕的在线扶植
  • 简洁的语法
  • 轻松开展

缺点:

  • 充实了原生API的进程花费
  • 浏览器宽容性倒霉,但已得到更正
  • 用法扁平
  • 生机勃勃对行业批驳使用

React

图片 6

React
类型 框架
网站 facebook.github.io/react/
知识库 github.com/facebook/react
当前版本 15.5.4
开发人员 Facebook和贡献者
发布日期 2013年3月
大小 最小21kb
用途 单页应用程序
使用度

React是四个用以营造顾客分界面的JavaScript类库,也是二零一八年最受关切的类库。它小心于Model-View-Controller(MVC卡塔尔开采的“View”部分,使用它能够轻易创设保留状态的UI组件。它是达成虚构DOM的首推类库之后生可畏, 它的内部存款和储蓄器结构能够有效地简政放权差距,页面更新也进一层可行。
  计算显示React的使花销就像超低,因为它是在应用程序中行使并不是在网址。
优点:

  • 精致,高效,快速灵活
  • 一句话来讲的组件模型
  • 了不起的文书档案和在线财富
  • 可完结服务器端渲染
  • 一时一刻受款待,阅世了快速增加

缺点:

  • 亟需上学新的概念和语法
  • 营造筑工程具很关键
  • 亟需任何类库或框架提供model和Controller部分
  • 与改正DOM的代码和任何类库不一样盟

刺探更加的多关于React the ES6 Way

Lodash 和 Underscore

Vue.js

图片 7

Vue.js
类型 框架
网站 vuejs.org
知识库 github.com/vuejs/vue
当前版本 2.0
开发人员 Evan You
发布日期 2014年2月
大小 最小19kb
用途 单页面应用
使用度

Vue.js是三个用于营造客商分界面包车型地铁轻量级渐进框架。它提供了三个周边React的伪造DOM驱动视图层,可以与此外类库集成,用于创设强盛的单页面应用。该框架是由事先在AngularJS职业过的EvanYou创立的,他领到了AngularJS中本人喜好的生机勃勃对。
  Vue.js使用HTML模板语法将DOM绑定到实例数据。Model是在数额变动时更新view的纯JavaScript对象。
优点:

  • 能够高速利用,而且稳步普遍
  • 相当的轻松进步高水准开辟职员的满意度
  • 依赖小,品质好

缺点:

  • 一个较新的种类 - 风险恐怕会更加大
  • 生机勃勃部分信任开垦职员进行翻新
  • 相比较于别的框架,财富超少

图片 8

Lodash
类型 类库
网站 lodash.com/
知识库 github.com/lodash/lodash/
当前版本 4.17.4
开发人员 John-David Dalton
发布日期 2012年4月
大小 最小4kb – 24kb
用途 通用
使用度
Underscore
类型 类库
网站 underscorejs.org/
知识库 github.com/jashkenas/underscore
当前版本 1.8.3
开发人员 Jeremy Ashkenas
发布日期 2009年10月
大小 最小6kb
用途 通用
使用度

Lodash和Underscore在本节一同座谈。它们提供了数百个作用性的JavaScript实用程序来抵补原生字符串、数字、数组和任何原始对象方法。就算五个类库之间有部分交汇,可是不太恐怕在贰个门类中并且利用那多个类库。

虽说多个类库在顾客端使用率超级低,不过却足以在劳务器端的Node.js应用程序中选拔那四个类库。

优点:

  • 小而简约
  • 好好的文书档案易于学习
  • 与大多类库和框架包容
  • 不扩充内置对象
  • 可以在客商端或服务器上行使

缺点:

  • 稍稍措施只在ES二〇一四及更加高版本的JavaScript中可用。

Backbone.js

图片 9

Backbone
类型 框架
网站 backbonejs.org
知识库 github.com/jashkenas/backbone/
当前版本 1.3.3
开发人员 Jeremy Ashkenas
发布日期 2010年10月
大小 最小8kb
用途 单页面应用
使用度

Backbone.js是提供劳务器端框架海南中国广播集团大的MVC结构的最初顾客端选项之风度翩翩。它唯后生可畏的信赖是Underscore.js。
  Backbone.js声称是二个类库,因为它能够与其他类型并入,不过本人觉着大好些个开辟人士都以为它是二个框架。
优点:

  • 体积小,重量轻,复杂度低
  • 不添加HTML逻辑
  • 文件丰硕
  • 接收了不菲用到,包含Trello、WordPress.com、LinkedIn和Groupon

缺点:

  • 与AngularJS等其余框架相比较,抽象度相当的低
  • 亟需额外的构件来兑现数据绑定等作用
  • 新式的框架已经不利用MVC架构了

AngularJS 1.x

Ember.js

图片 10

Ember.js
类型 框架
网站 emberjs.com
知识库 github.com/emberjs/ember.js
当前版本 2.15.0
开发人员 Ember team
发布日期 2011年12月
大小 最小95kb
用途 单页面应用
使用度

Ember.js是依照Model-View-ViewModel(MVVM卡塔 尔(阿拉伯语:قطر‎格局的框架之朝气蓬勃。它在单个包中完结模板化、数据绑定和类库。
优点:

  • 为顾客端应用程序提供了单纯性施工方案
  • 开采职员能够立即进步支付作用 - 它利用jQuery
  • 美好的向后包容性和晋升选项
  • 动用了今世Web开辟标准

缺点:

  • 大型分配式
  • 与其他正在向异常的小构件结构向上的框架相比,它丰富的大幅
  • 上学曲线陡峭

图片 11

AngularJS
类型 框架
网站 angularjs.org
知识库 github.com/angular/angular.js
当前版本 1.6.4
开发人员 Google
发布日期 2010年10月
大小 144KB
用途 单页应用程序
使用度

Angular是框架(或MVC应用程序框架卡塔尔类列表中的第三个。这几天最流行的Angular版本是1.x,它应用双向数据绑定增加HTML,同期解耦了DOM操作和应用程序逻辑。

固然版本2(今后是本子4!卡塔 尔(英语:State of Qatar)已经发表了,但是Angular 1.x仍在付出中。

优点:

  • 后生可畏对大商铺正在利用的风行框架
  • 支付今世Web应用程序的消除方案
  • 是正式MEAN栈(MongoDB,Express.JS,AngularJS,NodeJS卡塔 尔(英语:State of Qatar)的豆蔻梢头有的,有无数稿子和课程可用

缺点:

  • 学学曲线陡峭
  • 大的代码库
  • 心有余而力不足进级到Angular 2.x

Knockout.js

图片 12

Knockout
类型 框架
网站 knockoutjs.com
知识库 github.com/knockout/knockout
当前版本 3.4.2
开发人员 Steve Sanderson
发布日期 2010年7月
大小 最小59kb
用途 单页面应用
使用度

Knockout.js是最初的MVVM框架之风姿洒脱,它确认保证了UI与底层数据保持同步,具备模板和信赖性关系追踪。
优点:

  • 小而方便,无依据
  • 可观的浏览器帮助,能够支撑到IE6
  • 白玉无瑕的文档财富

缺点:

  • 相当的大的品种恐怕变得很复杂
  • 演变已经款款
  • 动用处境就好像在弱化

越来越多的框架和类库
  以下项目纵然不是专程流行,但值得思谋:
Polymer - 能够跨浏览器支持HTML5网页组件的类库
Meteor - 叁个用来Web应用程序的全栈平台
Aurelia - 大器晚成种相对较新的,轻量级的跨平台框架
Svelte - 叁个将框架源代码转换为干净JavaScript的新品类
Conditioner.js - 一个根据状态自动加载和卸载模块的类库

工具:施行通用职分
  创设筑工程具自动奉行各类Web开辟任务,比如预管理、编写翻译、优化图像、裁减代码、代码解析和周转测量检验等。职务能够在八个可举办李包裹中联合管理。
  前段时间最受招待的工具如下:

Angular 2.x(现在是Angular 4.x)

Gulp.js

图片 13

Gulp.js
类型 框架
网站 gulpjs.com
知识库 github.com/gulpjs/gulp
当前版本 3.9.1
每月下载 300万

虽说Gulp不是第三个义务实施工具,它却极快产生了最受款待的。Gulp使用轻易阅读的JavaScript代码,将源文件加载到流中,并在将数据输出到营造文件夹此前,通过各类插件管理数据。在别的其余选项早先检查Gulp.js是简约、快速和有意思的。

图片 14

Angular
类型 框架
网站 angular.io
知识库 github.com/angular/angular.js
当前版本 4.1
开发人员 Google
发布日期 2016年9月
大小 最小450kb
用途 单页面应用
使用度

Angular 2.0于二零一四年12月揭露。那是叁个风流浪漫体化的重写,它引进了使用TypeScript创制的基于模块化组件的模子。Angular 4.0于二〇一七年6月公布。

Angular 2.x与v1版本天渊之别,也不与此外版本兼容– 恐怕谷歌应该给品种起一个差异的名字!

优点:

  • 支付现代Web应用程序的解决方案
  • 是正统MEAN栈的生机勃勃局地,尽管只有为数相当少的学科可用
  • 对此熟稔静态类型语言(如C#和Java卡塔 尔(英语:State of Qatar)的开垦人士,TypeScript提供了生龙活虎部分优势。

缺点:

  • 学学曲线陡峭
  • 大的代码库
  • 不能从Angular 1.x升级
  • 与1.x比照,Angular 2.x较难精通

NPM

图片 15

NPM
类型 框架
网站 npmjs.com
知识库 github.com/npm/npm
当前版本 4.5.0
每月下载 300万

npm是Node.js包微处理机,但其脚本工具可用以运营通用职责。对于全部一点点依靠关系的简重要项目目来讲,那是八个很好的筛选。然则,更目不暇接的天职也许会变得不太适用。

React

图片 16

React
类型 框架
网站 facebook.github.io/react/
知识库 github.com/facebook/react
当前版本 15.5.4
开发人员 Facebook和贡献者
发布日期 2013年3月
大小 21kb分钟
用途 单页应用程序
使用度

React是一个用来营造客商分界面包车型大巴JavaScript类库,也是二〇一八年最受关心的类库。它小心于Model-View-Controller(MVC卡塔 尔(阿拉伯语:قطر‎开垦的“View”部分,使用它能够轻便创立保留状态的UI组件。它是贯彻设想DOM的首要推荐类库之黄金年代, 它的内部存款和储蓄器结构能够使得地总计差别,页面更新也尤其有效。

总结展现React的使花费仿佛好低,因为它是在应用程序中利用实际不是在网址。

优点:

  • 小巧,高效,快速灵活
  • 简短的零件模型
  • 能够的文档和在线能源
  • 可达成劳务器端渲染
  • 日前受应接,经验了快捷增进

缺点:

  • 内需上学新的定义和语法
  • 营造筑工程具比较重大
  • 内需别的类库或框架提供model和Controller部分
  • 与改善DOM的代码和其余类库不相配

打探越来越多关于React the ES6 Way

Grunt

图片 17

Grunt
类型 框架
网站 gruntjs.com
知识库 github.com/gruntjs/grunt
当前版本 1.0.1
每月下载 200万

Grunt是第一群被普及使用的JavaScript职责实施工具之后生可畏,但其速度和纵横交错的JSON配置却招致了Gulp的起来。以后那几个难点早就收获了减轻,Grunt仍然为二个受应接的挑精拣肥。
工具:模块绑定
  多个JavaScript文件的治本已经变为了大器晚成件繁杂的事体。暗中同意情况下,浏览器文件不会被编译,因而其依赖关系必得以适合的量的风流倜傥大器晚成进行加载或接二连三。就算有像ES6模块和CommonJS那样的选项,然而浏览器支持是轻松的,因而模块绑定变得非常根本。

Vue.js

WebPack

图片 18

WebPack
网站 webpack.js.org
知识库 github.com/webpack/webpack
当前版本 2.5.1
每月下载 600万

Webpack扶助全体流行的模块选项,并已改为React开垦的代名词。即便Webpack声称是三个模块捆绑程序,不过曾经足以作为通用职分运转程序了。

图片 19

Vue.js
类型 框架
网站 vuejs.org
知识库 github.com/vuejs/vue
当前版本 2.0
开发人员 Evan You
发布日期 2014年2月
大小 最小19kb
用途 单页面应用
使用度

Vue.js是三个用以营造客商分界面包车型大巴轻量级渐进框架。它提供了贰个相通React的虚构DOM驱动视图层,能够与其余类库集成,用于打造强盛的单页面应用。该框架是由事先在AngularJS工作过的EvanYou创造的,他领取了AngularJS中和睦爱怜的片段。

Vue.js使用HTML模板语法将DOM绑定到实例数据。Model是在多少变动时更新view的纯JavaScript对象。

优点:

  • 能够超级快利用,何况稳步分布
  • 相当的轻便进步高水准开荒人士的满足度
  • 依据小,质量好

缺点:

  • 八个较新的类型 – 危机只怕会越来越大
  • 有的信赖开拓人员举行更新
  • 对待于任何框架,能源非常少

Browserify

图片 20

Browserify
网站 browserify.org
知识库 github.com/substack/node-browserify
当前版本 14.3.0
每月下载 260万

Browserify辅助Node.js正在选拔的CommonJS模块,它将全数模块编写翻译成单个浏览器宽容的公文。

Backbone.js

图片 21

Backbone.js  
类型 框架
网站 backbonejs.org
知识库 github.com/jashkenas/backbone/
当前版本 1.3.3
开发人员 Jeremy Ashkenas
发布日期 2010年10月
大小 最小8kb
用途 单页面应用
使用度

Backbone.js是提供服务器端框架中常见的MVC结构的最先客商端选项之后生可畏。它唯黄金年代的信赖性是Underscore.js。

Backbone.js声称是三个类库,因为它能够与其余门类并入,不过笔者感觉大许多开辟人士都是为它是三个框架。

优点:

  • 体积小,重量轻,复杂度低
  • 不添加HTML逻辑
  • 文件丰硕
  • 使用了许多施用,包括Trello、WordPress.com、LinkedIn和Groupon

缺点:

  • 与AngularJS等其余框架相比较,抽象度异常低
  • 急需格外的零件来贯彻多少绑定等作用
  • 新式的框架已经不行使MVC架构了

RequireJS

图片 22

RequireJS
网站 requirejs.org
知识库 github.com/jrburke/r.js
当前版本 2.3.3
每月下载 百万

RequireJS是风流罗曼蒂克种浏览器中的模块加载器,它也得以在Node.js中动用。
工具:代码深入分析
  代码解析工具用于深入分析代码中潜在错误或离开语法的职业。叁个未闭合括号或未注明的变量一定会被检查实验出。

Ember.js

ESLint

图片 23

ESLint
网站 eslint.org
知识库 github.com/eslint/eslint
当前版本 3.19.0
每月下载 600万

ESLint是后生可畏种可插拔的代码解析工具。各样法规都是三个插件,因而得以依赖个体喜欢实行配备。

图片 24

Ember.js
类型 框架
网站 emberjs.com
知识库 github.com/emberjs/ember.js
当前版本 2.15.0
开发人员 Ember team
发布日期 2011年12月
大小 最小95kb
用途 单页面应用
使用度

Ember.js是基于Model-View-ViewModel(MVVM卡塔尔形式的框架之黄金年代。它在单个包中完毕模板化、数据绑定和类库。

优点:

  • 为顾客端应用程序提供了十足建设方案
  • 开采人士能够立即提升开荒效用 – 它应用jQuery
  • 优异的向后包容性和进级换代选项
  • 行使了现代Web开垦标准

缺点:

  • 特大型分配式
  • 与其余正在向极小组件结构向上的框架相比较,它那几个的特大
  • 读书曲线陡峭

JSHint

图片 25

JSHint
网站 jshint.com
知识库 github.com/jshint/jshint
当前版本 2.9.4
每月下载 200万

JSHint是二个易如反掌的JavaScript代码剖判工具,它很好的平衡了确实的错误和老旧的语法。

Knockout.js

图片 26

Knockout.js  
类型 框架
网站 knockoutjs.com
知识库 github.com/knockout/knockout
当前版本 3.4.2
开发人员 Steve Sanderson
发布日期 2010年7月
大小 最小59kb
用途 单页面应用
使用度

Knockout.js是最先的MVVM框架之风流浪漫,它确定保障了UI与底层数据保持同步,具备模板和依据关系追踪。

优点:

  • 小而便利,无依赖
  • 白璧无瑕的浏览器援助,能够支撑到IE6
  • 地利人和的文书档案财富

缺点:

  • 异常的大的项目可能变得很复杂
  • 衍生和变化已经款款
  • 动用景况仿佛在减少

JSLint

图片 27

JSLint
网站 jslint.com
知识库 github.com/reid/node-jslint
当前版本 0.10.3
每月下载 50000

JSLint是最初的代码解析工具之黄金年代,它完成了黄金时代套严苛的私下认可法则。
工具:单元测量试验
  测量试验驱动开垦的天职必要需求编写制定代码来测量检验自身的代码。近日有为数不少接纳,包罗Ava, Tape 和Jest ,但如今最流行的八个工具是:

更加多的框架和类库

以下体系即便不是专程流行,但值得思谋:

  • Polymer – 能够跨浏览器支持HTML5网页组件的类库
  • Meteor – 多个用以Web应用程序的全栈平台
  • Aurelia  – 意气风发种对峙较新的,轻量级的跨平台框架
  • Svelte – 一个将框架源代码调换为干净JavaScript的新类型
  • Conditioner.js  – 贰个基于状态自动加载和卸载模块的类库

Mocha

图片 28

Mocha
网站 mochajs.org
知识库 github.com/mochajs/mocha
当前版本 3.3.0
每月下载 500万

Mocha是一个JavaScript测验框架,能够在Node.js或浏览器中运转测验。它扶助异步测量检验,而且日常与Chai卓越使用,那样能够使测量试验代码以可读取的情势发挥。

工具:实行通用职责

构建筑工程具自动实践各样Web开拓职务,举例预管理、编写翻译、优化图像、降低代码、代码深入分析和周转测验等。职务能够在贰个可进行李包裹中联合管理。

当下最受应接的工具如下:

Jasmine

图片 29

Jasmine
网站 jasmine.github.io
知识库 github.com/jasmine/jasmine-npm
当前版本 2.6.0
每月下载 200万

Jasmine是多少人展馆现使得的测量试验工具,能够在浏览器中自动测量试验UI和互相。

Gulp.js

图片 30

Gulp.js
网站 gulpjs.com
知识库 github.com/gulpjs/gulp
当前版本 3.9.1
每月下载 300万

虽说Gulp不是第一个任务执行工具,它却连忙产生了最受款待的。Gulp使用轻松阅读的JavaScript代码,将源文件加载到流中,并在将数据输出到营造文件夹从前,通过种种插件管理数据。在别的其余选项在此以前检查Gulp.js是简约、急迅和有趣的。

QUnit

图片 31

QUnit
网站 https://qunitjs.com/
知识库 github.com/kof/node-qunit
当前版本 1.0.0
每月下载 25000

QUnit是几个单元测验框架,能够在输入特定参数时,检查函数结果。它还反映测验结果,确定保障没有失去特定的代码分支。
小结与建议
  如今特别流程的框架是React,同一时间其余的框架也在向着流行的样子发展。
  假若须求二个康宁的、通用的Web应用程序,能够构思选用Vue.js。
  全体框架已经不复受应接了,假诺您要求对贰个相当的大型项目进行严加的结构管理,AngularJS是二个不利的选用。近年来大多数人坚称选拔Angular 1.0版本,可是长时间来说,假设您愿意上学TypeScript,Angular 4.x版本是个更加好的选项。
  jQuery虽说今后并不丰硕盛行,在本事情报中也超少会被提到,但不可不可以认它是风雨无阻付出的,同期也是网址和应用程序的强有力工具。jQuery具备中和的求学曲线,全世界相当多开采职员能够很好地知道。
  倘让你想要冒险,能够施行Svelte那是叁个神乎其神的顾客端/服务器框架,它能够在创设时优先突显JavaScript,並且能够改变大家付出的点子。
  工具的抉择因项目而异。即便近年来接收Gulp的开采者占大比比较多,但WebPack却特别受接待。同偶尔候您也不可能错失ESLint和Mocha等测验工具。
  过去的十年,JavaScript经历了探求性的升高。过去只有为数相当少中央的类库能够筛选,不过今后可供接纳的类库已经雨后春笋。大概不能够明确哪些类库、框架和工具是最棒的,可是最相符本身项目标,正是最棒的。

假定本文错失了你最爱怜的JavaScript类库,框架或工具?接待在文末切磋。

初稿链接:https://www.sitepoint.com/top-javascript-frameworks-libraries-tools-use/
转发来源于:葡萄干城控件

NPM

图片 32

NPM
网站 npmjs.com
知识库 github.com/npm/npm
当前版本 4.5.0
每月下载 300万

npm是Node.js包微处理器,但其脚本工具可用于运作通用任务。对于具备一丢丢依赖关系的简短项目以来,那是三个很好的选项。然则,更复杂的职务恐怕会变得不太适用。

Grunt

图片 33

Grunt
网站 gruntjs.com
知识库 github.com/gruntjs/grunt
当前版本 1.0.1
每月下载 200万

Grunt是第一群被遍布使用的JavaScript任务施行工具之意气风发,但其速度和复杂的JSON配置却引致了Gulp的起来。以后那一个标题早就收获了减轻,Grunt仍为三个受应接的筛选。

工具:模块绑定

多少个JavaScript文件的田间管理已经产生了意气风发件繁缛的事体。暗许情状下,浏览器文件不会被编写翻译,由此其依赖关系必得以相符的逐黄金时代举办加载或三番两次。即使有像ES6模块和CommonJS那样的选项,但是浏览器协助是少数的,因而模块绑定变得不行根本。

WebPack

图片 34

WebPack
网站 webpack.js.org
知识库 github.com/webpack/webpack
当前版本 2.5.1
每月下载 600万

Webpack扶植全体流行的模块选项,并已改为React开拓的代名词。就算Webpack声称是二个模块捆绑程序,可是曾经足以当作通用职分运路程序了。

Browserify

图片 35

Browserify
网站 browserify.org
知识库 github.com/substack/node-browserify
当前版本 14.3.0
每月下载 260万

Browserify援救Node.js正在利用的CommonJS模块,它将有着模块编写翻译成单个浏览器包容的公文。

RequireJS

图片 36

RequireJS  
网站 requirejs.org
知识库 github.com/jrburke/r.js
当前版本 2.3.3
每月下载 百万

RequireJS是豆蔻梢头种浏览器中的模块加载器,它也能够在Node.js中接收。

工具:代码分析

代码解析工具用于深入分析代码中潜在错误或离开语法的正规化。八个未闭合括号或未注解的变量一定会被检查实验出。

ESLint

图片 37

ESLint
网站 eslint.org
知识库 github.com/eslint/eslint
当前版本 3.19.0
每月下载 600万

ESLint是豆蔻年华种可插拔的代码剖判工具。种种法规都以贰个插件,因而能够依照个体爱好进行安排。

JSHint

图片 38

JSHint
网站 jshint.com
知识库 github.com/jshint/jshint
当前版本 2.9.4
每月下载 200万

JSHint是二个游刃有余的JavaScript代码剖析工具,它很好的平衡了确实的错误和老旧的语法。

JSLint

图片 39

JSLint
网站 jslint.com
知识库 github.com/reid/node-jslint
当前版本 0.10.3
每月下载 50000

JSLint是最初的代码深入分析工具之生机勃勃,它完结了意气风发套严刻的私下认可法则。

工具:单元测验

测量检验驱动开拓的职分供给供给编写制定代码来测量试验自个儿的代码。目前有成都百货上千抉择,包蕴Ava, Tape 和Jest ,但眼前最风靡的四个工具是:

Mocha

图片 40

Mocha
网站 mochajs.org
知识库 github.com/mochajs/mocha
当前版本 3.3.0
每月下载 500万

Mocha是多个JavaScript测验框架,能够在Node.js或浏览器中运营测验。它协理异步测验,并且反复与Chai同盟使用,那样能够使测量试验代码以可读取的办法表达。

Jasmine

图片 41

Jasmine
网站 jasmine.github.io
知识库 github.com/jasmine/jasmine-npm
当前版本 2.6.0
每月下载 200万

Jasmine是四个人展览现使得的测量检验工具,能够在浏览器中自行测量检验UI和相互。

QUnit

图片 42

QUnit
网站 https://qunitjs.com/
知识库 github.com/kof/node-qunit
当前版本 1.0.0
每月下载 25000

QUnit是多个单元测量试验框架,可以在输入特定参数时,检查函数结果。它还举报测量试验结果,确定保证未有失去特定的代码分支。

小结与提议

日前可是流程的框架是React,相同的时间其余的框架也在向着流行的势头发展。

若果急需一个安然照旧的、通用的Web应用程序,能够设想采纳Vue.js。

总体框架已经不再受接待了,假使您供给对八个相当的大型项目展开严厉的结构管理,AngularJS是叁个科学的接纳。近年来大多数人坚称利用Angular 1.0本子,不过长时间来说,假若你愿意学习TypeScript,Angular 4.x版本是个越来越好的取舍。

jQuery就算未来并不十一分风行,在本事情报中也非常少会被波及,但不可以还是不可以认它是积极付出的,同一时候也是网址和应用程序的无敌区工作具。jQuery具备大壮的读书曲线,全世界多数开荒职员能够很好地理解。

即便您想要冒险,能够试试Svelte那是二个有趣的顾客端/服务器框架,它能够在营造时事先显示JavaScript,并且能够变动我们开拓的点子。

工具的精选因项目而异。纵然近年来应用Gulp的开辟者占大多数,但WebPack却更为受款待。同有时候你也无法错失ESLint和Mocha等测量检验工具。

千古的十年,JavaScript涉世了开发性的发展。过去独有为数相当的少骨干的类库能够筛选,可是未来可供接收的类库已经密密层层。只怕不可能鲜明哪些类库、框架和工具是最佳的,可是最适合本人项指标,正是最棒的。

假诺本文错失了你最赏识的JavaScript类库,框架或工具?招待在文末议论。

2 赞 5 收藏 评论

图片 43

本文由星彩网app下载发布于前端技术,转载请注明出处:2017年前端框架,工具大比拼

TAG标签:
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。