入行编程这一领域时间较短的开发者,可能对于技术的更替没有那么敏感。但如果将周期拉长点,或许会看到不一样的东西。
Stack Overflow 最近公布了一些建站以来,问题标签中最引人注目的上升和下降数据。我们看看能从这些数据中得到什么信息。看看编程语言、框架或者技术是怎样突然爆发,又是如何逐渐被抛弃的。
Stack Overflow 建站以来什么技术的关注度增长最迅猛?
为了找到最大的增长,我们看看 Stack Overflow 中问题标签年复一年的变化。看看哪些标签是每一年中增长百分比最高的。
original="https://static.oschina.net/uploads/space/2017/1202/080825_NNGS_2720166.png" data-image-enhancer="larger than 645" />
这些数据至少分析了 Stack Overflow 10000 个问题的标签,并排除了以数字结尾的标签,如 ios8。
可以看到,增长速度最突出的两个标签对应的分别是 Swift 和 Angular,事实上它们也都产生了十分大的影响。Swift 是苹果开源的用于开发 iOS 应用的编程语言,Angular 是 Web 前端框架 Angular.js 的升级版本。Stack Overflow 表示 Angular.js 的增长速度同样也很快,增长率能排在前十。
Android 集成开发环境 Android Studio 是面向移动开发者的 IDE,于 2013 年首次发布,并迅速发展成流行的 IDE。机器学习库 Tensorflow 在 2015 年由谷歌以开源的形式发布。我们可以看到一项新的显著成功的技术是如何发展的。
那么硬币的另一面,下降得最快的数据又如何?
flex 和 silverlight 在当时都是十分热门且流行的技术,但可以看到自移动互联网爆发以来,它们的关注度就急剧下降,到现在已基本无人过问。像 Silverlight 早已经被微软放弃,而 Flex 作为 Flash 的框架也随着 Flash 的淘汰而逐渐被遗忘。
Backbone.js 是一个 JavaScript 框架,它的增长下降情况具有典型的生态系统的残酷生命周期。用于 iPhone 的游戏引擎 Cocos2d 也已经不再受欢迎。
在这份数据中,ORM 关注度的下降也是十分明显的。相比十年前它的关注度显著降低,如果真的像数据显示的那样正被逐渐放弃使用,是否有更好的替代方案?
持续增长
除了这些起起落落的技术,还有一些技术在以稳定的速度发展和增长着。
可以看到,JavaScript 生态系统的成员如 Angular、TypeScript 和 Meteor 都有着稳定的发展速度。再比如无处不在的搜索引擎 Elasticsearch 和游戏引擎 Unity 也在持续稳定的发展着。这些多种多样的技术,在过去的 5 到 7 年里它们都以稳健的速度增长着。
参考:https://stackoverflow.blog/