2018年JavaScript现状调查报告出来啦!
JavaScript可以说是世界上最流行的脚本语言之一了,它是一种运行在浏览器中的解释型的编程语言。在我们的电脑、手机、平板上浏览的所有的网页,以及无数基于HTML5的手机App中,交互逻辑都是由JavaScript驱动的。
在这样的趋势下,熟练掌握JavaScript也成为了开发人员的必备技能点,而这些开发者对JavaScript的使用感受也非常重要。
就像在报告开头提到的那样:JavaScript总是在变化,新的库、新的框架、新的语言......这是它的乐趣所在,但这有时也会让人感到压力。今年StateOfJS调查了超过 20000 名 JavaScript 开发者,以确定他们正在使用什么,他们推崇什么以及他们想要学习什么。
根据得出来的一系列统计数据和见解,这份报告可以帮助开发者在JavaScript生态系统中实现自己的目标。统计数据包含JavaScript的前端框架、数据层、后端框架和其他工具等。
全球JavaScript开发者用户画像
参与调研国家及地区
StateOfJS团队今年对全球153个不同国家的开发商进行了调研。美国在此次调研中占主导地位,占受访人数的25%,其次是德国和澳大利亚,各站5%以上。
参与调研国家及地区
不同薪资段人员占比
从不同薪资水平来看,年薪在$50k-$100k的开发人员最多,占调研人数的29.6%,其次是$100k-$200k段和$30k-$50k段,分别是21.1%和16.8%:
不同薪资段人员占比
开发人员所在公司规模
从下图中可以看出,JS开发人员还是很喜欢往大公司“扎堆”,在100-1000人规模公司的开发者最多,占20.4%,其次是1000人以上规模的公司,占17.4%。
开发人员所在公司规模
JS开发人员性别比例
再来看下JS开发人员的性别比例,真可谓是“一边倒”,目测男性同胞们占了90%都不止,女性和其它性别同胞们依旧是“掌上明珠”般的存在。
JS开发人员性别占比
全球最受JS开发者欢迎的语言
随着JavaScript的不断成熟,开发人员开始创建各种语言和“方言”来编译JavaScript。
StateOfJs团队表示:
在以前很长一段时间里,CoffeeScript比较流行,但现今已被ES6及其后续版本,TypeScript,Flow,甚至是语法非常不同的语言(如Elm和Reason)所取代。
我们有充分的理由认为这就是整个JavaScript的未来。 随着像Web Assembly 这样的项目的出现,直接使用 JavaScript 编写代码可能很快就会变得古怪。
而截至目前,最大的两大赢家还是ES6 和TpyeScript!
不同语言的薪资情况
在这份调研中,平均薪资水平与受欢迎语言恰好相反,兴许是“物以稀为贵”,但也不排除冷门语言受调研人数基数少,而导致结果如此。
但是不论哪门语言,薪资处于$50k-$100k水平的人数是最多的。
全球最受JS开发者欢迎的前端框架前端仍然是JavaScript的关键战场。但现在尘埃已经散去,看起来只剩下两名战士了。
主流的前端框架再次与React和Vue.js相关。事实上,Vue的发展值得我们深思:两年前,27%的受访者甚至从未听说过这个库,而如今只有1.3%的开发者没听说过它这一比例!因此,虽然React仍占据着更大比重,但Vue的迅速崛起也并未停止。实际上,Vue已经超过其竞争对手的某些指标,如在GitHub上获得的星星数量。
而过去几年也发生了另一个故事:Angular的垮台。虽然它在原始使用方面排名仍然很高,但只有41%的满意度。因此,由于其庞大的用户群,它可能不会有太大的发展,因此很难看到它重夺前端宝座的一幕。
最后,清留意Svelte。通过对前端框架采用一种全新的方法,它可以让开发者产生很大的兴趣,并且是我们在“其他工具”类别中迄今为止提到的最多的一个选项。
不同前端框架薪资情况
同样的,也许由于样本基数的偏差,从平均薪水角度来看,Ember最高,平均$94k。
而无论哪个框架,薪资处于$50k-$200k的人数较多。
全球最受JS开发者欢迎的后端框架后端JavaScript近年来没有出现任何重大突破。虽然每年新框架层出不穷,但依旧无法撼动Express的宝座。
甚至是有时被称为Express继任者的Koa,其满意度也处于较低的状态(并且使用数量大大降低)。
这个领域的一个有趣参与者是Next.js,它最近引起了很多人的兴趣。虽然它无法与功能齐全的Node后端相比,但它专注于解决React应用程序的服务器端出现的问题,这使其成为一个非常有用的工具。
看看AWS Lambda等无服务器技术将在未来几年内扮演怎样的角色也很有趣。谁曾想,我们所知道的后端类别可能很快就会成为过去!
不同后端框架薪资情况
从统计结果来看,不同后端框架,薪资水平普遍处于$50k-$100k。
不同语言、框架交叉使用情况有多少React用户也使用Redux?GraphQL的爱好者也同样喜欢Jest呢?Express的开发者有多少同样也进入也为Ember?
以下图中每个语言的大小对应着使用了该语言并愿意再次使用它的受访者数量。