2015年最详细的 JavaScript 开发者调查报告

  • A+
所属分类:JavaScript

眼看2016年马上就到啦!对javascript开发者的调查也结束了,现在就来看看对javascrip开发者的调查结果吧!在公布结果的时候我会保持公正,以便于大家自己得出没有偏见的结论。

1.你写的是什么类型的JavaScript?

97.4%的受调查者编写适用于Web浏览器的JavaScript,这些人中的37%同时还写移动Web应用程序。超过3000人——大概 56.6%——编写服务器端的JavaScript。在这些人中,5.5%的人在某种嵌入式环境使用JavaScript,如Tessel或 Raspberry Pi。

一些参与者说他们在其他一些地方使用JavaScript,比较明显地是在开发CLI和桌面应用程序的时候。有几个还提到Pebble 和Apple TV。这些都被划分在Other类中,占了2.2%的投票。

2015年最详细的 JavaScript 开发者调查报告

2.你在哪里使用JavaScript?

不出所料,94.9%的投票者在工作中使用JavaScript。不过,统计中还有很大一部分——82.3%——在业余项目中也用JavaScript。其他的回复包括教学和学习,因为兴趣,或为非营利组织。

2015年最详细的 JavaScript 开发者调查报告

3.你写JavaScript有多久了?

超过33%的受调查者已经写了超过6年的JavaScript代码。此外,5.2%在一年前开始写JavaScript,12.4%两年前,15.1%三年前。也就是说有32.7%的人是近年来才开始写JavaScript的。

2015年最详细的 JavaScript 开发者调查报告

4.你使用哪种编译到JavaScript的语言?

85%的人答复说他们编译ES6到ES5。同时15%仍然使用CoffeeScript,15.2%使用TypeScript,还有少得可怜的1.1%使用Dart。

这是其中一个我希望能够有更多人参与合作的问题,因为有13.8%选择了“Other”的回答。在这13.8%中,绝大多数的答案是ClojureScript,elm,Flow和JSX。

2015年最详细的 JavaScript 开发者调查报告

5.你更喜欢什么JavaScript格式选择?

绝大多数投票的JavaScript开发人员似乎更喜欢分号,达到79.9%。与此相反,11%的人表示他们不喜欢使用分号。说到逗号,44.9% 的人赞成用在表达式后面,而4.9%的人希望使用逗号优先的语法。还有空格缩进,65.5%的人喜欢空格键,而29.1%更愿意使用tab。

2015年最详细的 JavaScript 开发者调查报告

6.你使用哪种ES5特性?

在79.2%的受调查者赞同函数的Array方法的同时,76.3%的人表示他们使用的是strict mode,30%采用Object.create,使用getter and setters的只有28%。

2015年最详细的 JavaScript 开发者调查报告

7.你使用哪种ES6特性?

值得注意的是,箭头功能是本次调查中最常用的ES6特性:79.6%。使用Let和const关键字的有77.8%,promise也很强劲,为 74.4%。不出所料,只有4%的受访者使用proxies。只有13.1%的用户表示他们使用的是symbols,超过30%的人说他们使用 iterators。

2015年最详细的 JavaScript 开发者调查报告

8.你是否写测试?

虽然有21.7%表示从来不写任何测试,但大多数人都写过一些测试,34.8%时常在写测试。

2015年最详细的 JavaScript 开发者调查报告

9.你是否运行连续集成测试?

CI也是如此,虽然不使用CI服务器的人更多——超过40%。近60%的受访者至少偶尔使用CI,其中32%时常在CI服务器上运行测试。

2015年最详细的 JavaScript 开发者调查报告

10.你如何运行测试?

59%喜欢用PhantomJS或类似运行自动化的浏览器测试,51.3%喜欢在web浏览器上执行手动测试。服务器端的自动化测试收获了53.5%的得票率。

2015年最详细的 JavaScript 开发者调查报告

11.你使用什么单元测试库?

似乎大多数受访者倾向于要么Mocha要么Jasmine来运行JavaScript测试,而Tape得到了9.8%的投票。

2015年最详细的 JavaScript 开发者调查报告

12.你使用什么代码质量工具?

似乎受调查者要么选ESLint,要么在JSHint阵营,但JSLint经过这么多年之后意外强劲,有近30%。

2015年最详细的 JavaScript 开发者调查报告

13.你怎么处理客户端的依赖?

npm以60%的投票成为了客户端依赖管理体系的首选。Bower依然有20%的份额,而旧的<script>下载和插入只有13.7%。

2015年最详细的 JavaScript 开发者调查报告

14.你的首选构建脚本解决方案是什么?

构建工具的选择不同,部分原因是因为选择多。Gulp最流行,投票超过40%。紧随其后的是npm run,为27.8%,而Grunt得到了18.5%的认可。

2015年最详细的 JavaScript 开发者调查报告

15.你首选的JavaScript模块加载工具是什么?

当前,似乎大多数人都在Browserify和Webpack之间犹豫不决,而后者领先前者近7个点。29%的用户表示,他们首选使用Babel模块,不过在此之前可以推测的是使用了上述两种工具中一种来一块打包自己的模块。

2015年最详细的 JavaScript 开发者调查报告

16.你使用什么库?

这是可从协作编辑中受益良多的问题之一。 jQuery依然强劲,得票50%以上。大部分JavaScript开发人员投给了Lodash或underscore,而xhr 微库只有8%的投票。

2015年最详细的 JavaScript 开发者调查报告

17.你使用什么框架?

毫不奇怪,React和Angular会领先群雄。Backbone位列第三,为22.8%。

2015年最详细的 JavaScript 开发者调查报告

18.你使用ES6的频率

在这个问题上大家的分歧很大,有近20%的人从未使用过ES6,只用ES6的人超过10%,接近30%的人皆有涉猎,近40%偶尔使用。

2015年最详细的 JavaScript 开发者调查报告

19.你知道ES2016会发生什么吗?

粗略地说,有一半的受调查者不知道什么ES2016会发生什么,而另一半则有所耳闻。

2015年最详细的 JavaScript 开发者调查报告

20.你理解ES6吗?

超过60%的受调查者了解基础知识,10%的人不知道ES6,还有超过25%的人认为他们相当了解ES6。

2015年最详细的 JavaScript 开发者调查报告

21.你是否认为ES6改善提高了?

近95%的受调查者认为ES6对语言进行了改进。

2015年最详细的 JavaScript 开发者调查报告

22.你的的首选文本编辑器是什么?

同样又有分歧。超过一半的受调查者喜欢Sublime Text,超过30%喜欢使用Atom,它的开源复制品。超过25%的受调查者支持WebStorm,支持vi / vim的也超过25%。

2015年最详细的 JavaScript 开发者调查报告

23.你的首选开发操作系统是什么?

超过60%的投票者使用的是Mac,而Linux和Windows的用户都接近于20%。

2015年最详细的 JavaScript 开发者调查报告

24.你如何找到可重用的代码、库和工具?

受调查者似乎更喜欢GitHub和搜索引擎,不过通过博客、Twitter和npm网站的也不少。

2015年最详细的 JavaScript 开发者调查报告

25.你是否参加JavaScript社交活动?

近60%的人至少参加过一次会议,而74%的人表示,他们喜欢参加聚会。

2015年最详细的 JavaScript 开发者调查报告

26.你的JavaScript应用程序支持什么浏览器?

答案五花八门,但幸运的是大多数人表示不在IE6上处理客户了。

2015年最详细的 JavaScript 开发者调查报告

27.你定期了解JavaScript的最新功能吗?

对于最新的JavaScript功能,大约有80%的受调查者会试着并保持最新的资讯。

2015年最详细的 JavaScript 开发者调查报告

28.你在哪里了解最新的JavaScript功能?

不出所料,一流的Mozilla Developer Network是获取JavaScript文档和新闻方面的领头羊。JavaScript Weekly,也是一个新闻和文章的来源,受近40%的受访者的欢迎。

2015年最详细的 JavaScript 开发者调查报告

29.你听说过哪些特性?

超过85%的投票者听说过ServiceWorker,不过我很想知道有多少人真正用过它!

2015年最详细的 JavaScript 开发者调查报告

30.除了JavaScript,你主要使用什么语言?

语言太多了,而且我肯定遗漏了一些,但是结果已经尽在不言中。

2015年最详细的 JavaScript 开发者调查报告

weinxin
我的微信公众号
我的微信公众号扫一扫

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: