@levinzhang
2018-01-24T06:00:38.000000Z
字数 1137
阅读 615
by
根据Stack Overflow一项新的分析,JavaScript框架的生命周期是非常短暂的。但是这个数据也展现了主流框架的寿命和满足特定需求的框架的寿命是有所差异的。
根据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,那么这样的答案已经早就在那里了。