几年前,对于JavaScript生态的调查还是非常简单的,只需要列两个问题就可以了,1.你使用jQuery吗?2.你对此有什么建议吗?但是这种情况现在发生了改变,JavaScript生态不断丰富壮大,即使是最有经验的程序员,在面对JavaScript开发各个阶段的多种可用选择时也会不断挠头。
所以在这次的JavaScript生态调查中,我们向全球28000名开发者提出了100多个问题,内容涵盖从前端库到后端框架,这应该是对JavaScript生态最全的一次调查。
JavaScript Flavors
现在我们再谈"JavaScript"不再仅仅是一门语言,而是一系列的Flavors。虽然ES6在JavaScript领域还是掌握话语权的标准,但是TypeScript的崛起对此提出了挑战,TypeScript正迅速成为类型化JavaScript领域的领导者。
JavaScript库的使用情况:
JavaScript库使用数量的调查:
JavaScript库使用满意度调查:
JavaScript前端
没错儿,JavaScript的战争前端中仍然是主战场。骨灰级玩家React一如既往的占据主要地位,Angular份额下降,给了Vue上位的绝佳机会。不过,我们相信到了2018年,整个格局会与2017年有很大的不同。
JavaScript前端库的使用情况:
JavaScript前端库使用数量的调查:
JavaScript前端库使用满意度调查:
状态管理工具
状态管理是指在服务器和客户端管理数据的解决方案。在客户端,Redux是毫无疑问的王者,但是最近GraphQL势头渐起,它的兴起可能会推动Relay Modern和Apollo等库的发展。
JavaScript状态管理库的使用情况
JavaScript状态管理库数量的使用情况
JavaScript状态管理库的满意情况
JavaScript后端框架
与前面竞争激烈的情况不同,JavaScript后端框架,除了Express之外,真正的竞争者很少。虽然多年来Meteor的发展不错,但是与Express相比还不够资格。
JavaScript后端库的使用情况
JavaScript后端库数量的使用情况
JavaScript后端库的满意情况
JavaScript测试工具
JavaScript测试工具同样竞争激烈,快速的发布周期、功能和性能之间的比较以及框架之间的战争不断升级。
JavaScript测试工具的使用情况
JavaScript测试工具数量的使用情况
JavaScript测试工具的满意情况
JavaScript CSS框架
关于样式组件CSS-in-JS方法,特别是在React生态系统中,已经做了很多工作。但是结果显示,目前开发者仍然更喜欢SASS / SCSS,甚至是Plain CSS 。
JavaScript CSS框架的使用情况
JavaScript CSS框架数量的使用情况
JavaScript CSS框架的满意情况
JavaScript Build Tools
除了NPM之外,Webpack仍然是构建工具的王者。
JavaScript构建工具的使用情况:
JavaScript构建工具数量的使用情况:
JavaScript构建工具的满意情况:
JavaScript Mobile & Desktop Frameworks
在这个领域,PhoneGap / Cordova的使用率高,但满意度很低。NativeApp目前看起来是最可靠的解决方案,但是React Native的崛起可能会为整个格局带来变数。
JavaScript Mobile & Desktop 框架的使用情况:
JavaScript Mobile & Desktop 框架数量的使用情况:
JavaScript Mobile & Desktop 框架的满意情况:
其它工具
Package Managers 库的使用情况:
Utility Libraries的使用情况:
Text Editors的使用情况
Code Linters的使用情况:
写在最后:
虽然我们已经尽可能的全面去调查了JavaScript生态,但是无奈JavaScript生态实在太庞大,这里提到的每个库和工具都可以进一步细分为插件,包以及其他扩展列表。
当然我们也可以利用已经收集到的数据来做更多的事情,例如哪些应用程序将其功能发挥到了最大,以及他们对JavaScript语言的意见。JavaScript一直在不断发展壮大,学习JavaScript你永远不会感到无聊。希望2018年我们的调查可以带来更多的的价值。