2017年前端开发工具趋势

简介: 本文来源于全球的5254份前端工具使用的调查报告,期望通过本文能够帮助大家更好的了解最新的前端开发工具趋势。 受访者组成 83%的受访者具有两年以上的前端技术经验,只有5%的受访者不到一年:   CSS 开发者中有63%为高级开发者和专家:   尽管CSS被认为只是属性-参数值对的简单集合,但是CSS却是很难掌握的。

本文来源于全球的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和浏览器开发的基础知识。这些知识能够帮助你更好了解框架,甚至也可能促使你为框架系统的改进做出贡献。

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

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

 

相关阅读:

【报表福利大放送】100余套报表模板免费下载

最流行的5个前端框架对比

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

Angular vs React 最全面深入对比

 

相关文章
|
6月前
|
人工智能 vr&ar 数据安全/隐私保护
移动应用开发的未来趋势与挑战####
本文深入探讨了移动应用开发的现状,并展望了其未来的发展趋势与面临的挑战。随着技术的不断进步和用户需求的日益多样化,移动应用开发正经历着前所未有的变革。文章分析了当前主流的移动操作系统特点,探讨了跨平台开发工具的优势与局限,并着重讨论了人工智能、物联网等新兴技术对移动应用开发的影响。同时,也指出了数据安全与隐私保护、用户体验优化等方面在未来开发中的重要性。 ####
|
7月前
|
人工智能 前端开发 5G
探索移动应用开发的未来趋势与挑战
【8月更文挑战第65天】随着智能手机的普及和移动互联网的快速发展,移动应用已经成为人们日常生活中不可或缺的一部分。本文将深入探讨移动应用开发的新趋势、面临的挑战以及如何通过创新技术来克服这些挑战。我们将从用户体验设计、跨平台开发框架、人工智能集成等多个角度出发,分析移动应用开发的最新动态,并以代码示例具体说明如何在实际应用中实现这些技术和策略。无论你是开发者还是对移动应用感兴趣的读者,这篇文章都将为你提供有价值的信息和启示。
|
8月前
|
机器学习/深度学习 人工智能 搜索推荐
移动应用开发的未来趋势与挑战
本文将探讨移动应用开发的最新趋势,包括跨平台框架的兴起、人工智能和机器学习的集成、以及隐私保护的重要性。文章还将讨论开发者面临的主要挑战,如设备碎片化、安全性问题和用户参与度的提升。通过分析当前市场状况和技术发展,我们将提供对未来移动应用开发的预测和建议。
|
8月前
|
机器学习/深度学习 人工智能 搜索推荐
探索移动应用开发的未来:趋势与挑战
在数字时代,移动应用已成为我们生活的一部分。本文将深入探讨移动应用开发的当前趋势,面临的挑战,以及未来可能的发展方向。我们将从技术革新、用户体验、安全性、跨平台开发等角度出发,分析移动应用开发的现状和未来。无论你是开发者,还是对移动应用感兴趣的读者,这篇文章都将为你提供有价值的信息和启示。
|
搜索推荐 大数据 云计算
未来移动应用开发的趋势与挑战
【4月更文挑战第7天】随着科技的飞速发展,移动应用已经成为我们日常生活中不可或缺的一部分。从购物、支付到社交、娱乐,移动应用已经深入到我们生活的各个角落。然而,随着移动设备的不断升级和用户需求的不断变化,移动应用开发面临着前所未有的挑战。本文将探讨未来移动应用开发的趋势和挑战,以及如何应对这些挑战。
|
人工智能 安全 搜索推荐
未来移动应用开发趋势与挑战
随着移动互联网的蓬勃发展,移动应用开发已成为当今科技领域的热门话题之一。本文将探讨未来移动应用开发的趋势与挑战,涵盖了人工智能、虚拟现实、增强现实等新技术对移动应用的影响,以及移动操作系统的发展方向。通过对这些问题的深入分析,我们可以更好地把握移动应用开发的方向,应对未来的挑战。
|
6月前
|
缓存 Java 网络安全
Solr7.4.0报错org.apache.solr.common.SolrException
在使用 Solr 7.4.0 时,`org.apache.solr.common.SolrException` 错误可能由多种原因引起,包括配置文件错误、核心未加载、权限问题、Java 环境问题、依赖库冲突和网络配置问题。通过检查配置文件、确保正确的权限、验证Java环境、解决依赖库冲突和检查网络配置,可以有效解决这些问题。结合日志文件、管理控制台和调试模式,可以快速定位和解决错误,确保 Solr 系统的稳定运行。
250 1
|
6月前
|
Java 开发者
Java“UnsupportedEncodingException”解决
在Java编程中,“UnsupportedEncodingException”是一个常见的异常,通常发生在处理字符编码时。本文将介绍该异常的原因、常见场景及解决方法,帮助开发者有效应对字符编码问题。
344 2
|
9月前
|
机器学习/深度学习 并行计算 PyTorch
PyTorch与CUDA:加速深度学习模型训练的最佳实践
【8月更文第27天】随着深度学习应用的广泛普及,高效利用GPU硬件成为提升模型训练速度的关键。PyTorch 是一个强大的深度学习框架,它支持动态计算图,易于使用且高度灵活。CUDA (Compute Unified Device Architecture) 则是 NVIDIA 开发的一种并行计算平台和编程模型,允许开发者直接访问 GPU 的并行计算能力。本文将详细介绍如何利用 PyTorch 与 CUDA 的集成来加速深度学习模型的训练过程,并提供具体的代码示例。
806 1
|
10月前
|
定位技术
eharts 中国地图添加城市(散点图实现,含获取城市坐标、图片转base64、自定义散点样式)
eharts 中国地图添加城市(散点图实现,含获取城市坐标、图片转base64、自定义散点样式)
711 9