文档章节

2017年前端开发工具趋势

葡萄城技术团队
 葡萄城技术团队
发布于 2017/08/15 10:39
字数 1646
阅读 2320
收藏 52

本文来源于全球的5254份前端工具使用的调查报告,期望通过本文能够帮助大家更好的了解最新的前端开发工具趋势。

受访者组成

83%的受访者具有两年以上的前端技术经验,只有5%的受访者不到一年:

 

CSS

开发者中有63%为高级开发者和专家:

 

尽管CSS被认为只是属性-参数值对的简单集合,但是CSS却是很难掌握的。CSS3引入了许多的新特性,要想完全的掌握CSS变得越来越困难。

 

CSS预处理器

超过63%的开发者使用Sass,这也使得Sass成为无可争议的预处理首选者。8%的开发者使用PostCSS,通常情况下,PostCSS都是和AutoPrefixer等预处理器配合使用的。

仅有14%的开发者不使用任何预处理,他们更喜欢使用原始的CSS代码。尽管这种方式开发效率较慢,但是却是刚开始学习前端开发的最容易和最好的方式。如果86%的开发者使用预处理器,则平均一个网站需要进行7.2个CSS文件的请求。

仅有10%的受访者尝试过Less,19%的受访者尝试过Stylus,80%的受访者从未听闻Rework。

 

CSS的命名方式

46%的开发者在编码时会使用一种命名方式,对于CSS高级开发者和专家来说,这个比例上升到了57%。

最受欢迎的命名方式是BEM,占到总数的40%。接下来是CSS Modules(16%)、OOCSS(15%)和SMACSS(13%)。

 

其它的CSS工具

39%的受访者在当前的项目中使用Modernizr。14%的受访者使用Stylelint来检查CSS的有效性。23%的开发者不使用任何CSS工具或命名方式。

 

JavaScript

受访者中有51%是JavaScript的高级开发者或专家。

 

库和框架

尽管存在相关性问题,但是超过99%的开发者都曾使用过jQuery,有31%的受访者认为使用jQuery对大多数项目来说都很重要。目前仍有近70%的受访者继续在现有的项目中使用jQuery:

 

框架的情况看起来比较让人迷惑:

  • 38%的项目目前正在使用React,然而只有29%的开发者认为使用React很流畅,18%人开发者认为使用React很有必要。0.1%的网站被发现使用了React,但请记着,这些调查结果只取自于前端开发人员,并不是所有的网页开发者。
  • 25%的项目目前正在使用angular 1,然而只有8%的开发人员认为使用Angular 1很有必要,同时选择使用Angular 2的只有8%。
  • ​Vue.js已被用于10%的项目中,但只有不到6%的开发人员对这个框架感到满意,3%的人认为使用Vue.js很有必要

 

任务执行工具和模块绑定

有44%的开发者使用Gulp,所以Gulp是当仁不让的最受欢迎工具。同时,更为简单的npm script也从2016年的23%使用率上升到了26%。

Grunt的使用率下滑到了12%。有11%的受访者选择不使用任何任务执行工具。

使用模块绑定的开发者自2016年以来增长了20%,达到68%。其中Webpack是最受欢迎的模块绑定工具,占到了31%,其次是Browserify(11%)、RequireJS(8%)。

 

编译器:将ES6代码编译为ES5

62%的开发人员正在使用Babel这样的编译器,来将ES6代码编译为对旧浏览器更为友好的ES5代码。31%的受访者听说过这样的编译器,但是并未使用过。7%的开发者从未听说过这样的编译器。

62%这个数据是比较高的。IE和旧的应用并不支持最新的JavaScript语法,所以如果你正在编写的是ES6代码,那么就需要最新的浏览器来支持。如果项目需要在旧的浏览器版本下运行,那么最好编写ES5代码。

 

其它JavaScript工具

41%的开发者使用ESLint,19%的开发者使用JSLint,14%的开发者使用JSHint这样的工具来检查代码的合法性。

23%的受访者表示,他们不使用任何代码合法性检查工具。但是他们可能会使用文本编辑器和IDE来检查代码错误。

测试工具的使用率在一年时间之内增长了12%,达到了52%。但是纵观过去,JavaScript的测试一直是个挑战。测试驱动开发(TDD)这样的技术虽然能够捕获逻辑错误,却不能捕获异步事件下发生的错误。幸运的是,行为驱动开发(BDD)很可能会融合到真实浏览器的检查活动中,这样也会促使前端测试更加可操作。

目前最流行的系统有:

  • Mocha – TDD/BDD(23%)
  • Jasmine – BDD(17%)
  • QUnit – TDD(4%)
  • Jest – TDD/BDD(3%)
  • ​Ava – TDD/BDD(2%)

94%的受访者表示,他们使用过Node.js包管理器npm,有23%的受访者使用过TypeScript。

 

2017年应该使用什么工具?

总得来说,开发工具是多种多样的。开发人员应该多研究一些预处理器和命名方式等,以便选择最适合自己的。

有以下几点值得注意:

  • 如果你需要使用更多的工具,那么Node.js和npm值得选择
  • Gulp和Webpack值得尝试
  • ​学习ES6,即便你一直工作在向后兼容的ES5项目中。

根据调查结果,在选择库时,jQuery是一个合理的选择。在选择框架时,可以选择React,因为它很受欢迎。如果你还没选定框架,那么可以先学习HTML、CSS、JavaScript和浏览器开发的基础知识。这些知识能够帮助你更好了解框架,甚至也可能促使你为框架系统的改进做出贡献。

前端开发工具推荐:

Wijmo 是一款使用 TypeScript 编写的新一代 JavaScript/HTML5 控件集。它秉承触控优先的设计理念,在全球率先支持 AngularJS,并且支持 React、VueJS 以及 TypeScript 2.2,它还提供性能卓越、零依赖的 FlexGrid 和图表等多个控件,是构建企业应用程序的全套控件集。

原文链接:https://www.sitepoint.com/front-end-tooling-trends-2017/

转载请注明出自:葡萄城控件

© 著作权归作者所有

葡萄城技术团队

葡萄城技术团队

粉丝 387
博文 545
码字总数 792732
作品 17
西安
高级程序员
私信 提问
加载中

评论(8)

海风秋
海风秋

引用来自“itnansheng”的评论

百分之70是培训机构出来的
比例也许再高点
回去干活
回去干活
这是在推Wijmo这个玩意 么?
ifu25
ifu25
搞了半天,葡萄城的广告一枚…还率先支持?!
Seek_
Seek_
注意是全球,而不是中国
小马-过河
小马-过河
0.1%的网站被发现使用了React 😆
Holt_Vong
Holt_Vong
写得一手好软文,差点信了
一只囧蟹
一只囧蟹
误导
tunnelt
tunnelt
百分之70是培训机构出来的
2017年Web前端必火的6大流行开发趋势!

Web前端流行开发趋势 每到年底,人们总喜欢展望下一年,Web 开发领域也不例外。在 Web 开发领域,技术革新的速度堪比光速,未来总是超乎我们的想象,我们只能尽自己所能做一些合理的预测。 ...

qq58fec62e6d53b
2017/04/25
0
0
2018前端值得关注的几个趋势

1.前言 2017悄然过去,2018已经来到。人在进步,技术在发展。2018年前端有哪些领域,技术值得关注,哪些技术会兴起,哪些技术会没落。下面就我个人的判断进行一个预测判断,希望能对大家起到...

2018/01/08
0
0
JavaScript 年度调查报告:React、Vue 和 Angular 三分天下,谁将在 201

JavaScript 年度调查报告:React、Vue 和 Angular 三分天下,谁将在 201 程序师2017-12-290 阅读 javascript业界观察 要论 2017年最主流的三个 Web前端框架,应莫过于 Angular、Vue和 React了...

程序师
2017/12/29
0
0
2017年IT人年终总结,一个都不知道的你这一年就白过了

移动互联时代,每天都会涌现大量新词热词,我们IT圈也不例外,2017年就要过去了,是时候来回顾下这一年都发生了什么 首先来看看2017年互联网的热词与流行语,原来2017年的年轻人们聊天最经常...

uzv80px5v412ne
2017/12/30
0
0
2017 年 11 个移动 App 开发趋势

智能手机已经成为我们日常生活不可分割的一部分。早上用闹钟起床,使用Whatsapp,听音乐,阅读新闻,观看YouTube视频,检查邮件,更新项目状态等等——一切都可以在我们的移动设备上无缝执行...

凝小紫
2017/01/31
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

Spring AOP之同一个对象方法内部自调用导致事务失效问题

对于像我这种喜欢滥用AOP的程序员,遇到坑也是习惯了,不仅仅是事务,其实只要脱离了Spring容器管理的所有对象,对于SpringAOP的注解都会失效,因为他们不是Spring容器的代理类,SpringAOP,就切入不...

xiaomin0322
32分钟前
1
0
Linux learn(七)

例行工作安排(定时任务)at,cron at 由atd服务提供,at指令所产生的的要运作的工作都以文本文件的方式写入 /var/spool/at/目录内,该工作便能等待at的这个服务取用与执行了。 权限限制相关...

lazy~
38分钟前
2
0
Vim与clang-format

前一段时间因工作需要参与了一个开源项目,在向github提交代码后提示格式校验失败。 项目的管理者告知,要想修改的代码能入库需要使用Clang-Format校验。 需要使用下面的命令对上次的修改重新...

DB_Terrill
41分钟前
1
0
Kafka写入数据保证不丢失

Kafka写入数据保证不丢失: 每个partition至少有一个follower在ISR列表中,跟上了Leader的数据同步 每次写入数据时,都要求至少写入partition leader成功,还至少一个ISR里的follower写入成功...

春哥大魔王的博客
47分钟前
1
0
git仓库删除所有提交历史记录,成为一个干净的新仓库

把旧项目提交到git上,但是会有一些历史记录,这些历史记录中可能会有项目密码等敏感信息。如何删除这些历史记录,形成一个全新的仓库,并且保持代码不变呢? 1.切换到新的分支 git check...

dragon_tech
50分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部