看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!
根据 Stack Overflow 一项新的分析,JavaScript 框架的生命周期是非常短暂的。但是这个数据也展现了主流框架的寿命和满足特定需求的框架的寿命是有所差异的。
在一篇博客文章中,Stack Overflow 的开发人员 Ian Allen 提到 JavaScript 框架的生命周期包括一个快速的流行过程,然后就是随着对框架失去新鲜感而导致热度逐渐下降:
这里能够看到有一个快速的上升,随着框架变得流行然后就是缓慢的上升,但是随着开发人员采取更新的技术,其流行程度会逐渐下降。这些框架的生命周期只能维持两三年。
Allen 使用了像 backbone.js、ember.js 和 knockout.js 这样的框架作为符合该模式的例子。通过使用 Stack Overflow Trends 工具(在他们的分析中也使用了该工具),InfoQ 对比了(在相同的比例上)这些较小的框架以及更大的框架,比如 Angular.js、Angular 和 React.js。
图1 各种JavaScript 框架在Stack Overflow 上所提问题的百分比
这个版本的数据可以看到Angular(2+)和React 依然处于上升阶段,并没有保持较小框架那样的流行度模式。或者说,它们会遵循相同的生命周期,只不过因为它们所使用的社区规模,其时间线会有所差异。
Vue.js 的时间点很有意思。它是一个相对较新的框架,在 2014 年中旬之前并没有任何的活动。如果两到三年的生命周期是准确的,那么随着新的框架进入市场,在 2018 年或者 2019 年早期就可能看到它的关注度会有所下降。另一方面,如果它是 Angular 和 React 真正的竞争对手,那么它的上升仅仅是开始。
图2 Vue.js 在Stack Overflow 上每个月所提问题所占的百分比
Stack Overflow 只是一个间接的指标。尽管这个问答网站在软件开发人员中非常流行,但是有些原因可能会导致这些结论带有误导性。例如,Hacker News 的用户 Kajayacht提到 Stack Overflow 上的问题可能已经有人回答过了:
……随着时间的流逝,[jQuery] 的问题可能都已经被问过了。所以,相对于 2009 年,在 2017 年关于 jQuery 所提出的问题肯定会有所下降,比如,如果我想知道如何根据属性查找元素,而不是根据 class 或 id,那么这样的答案已经早就在那里了。
评论