文档章节

Flash已死,谁会步其后尘?

一匹骏马
 一匹骏马
发布于 2017/08/09 15:04
字数 2263
阅读 12
收藏 0
点赞 0
评论 0

上个星期,Adobe宣布2020年后将停止支持Flash。这在某些方面,这一消息令人惊讶:我有时还是会访问一些利用Flash的页面,而在一些软件开发社区中,还是有不少该技术的拥趸。    

但从另外一些情况来看,这一消息姗姗来迟。基于一些软件开发社区调查出的Flash使用率,大家可能早已知道该技术的衰退。一个最为显著的例子就是我们的StackOverflow Trends Tools,从中可以看出Flash从2011年起就不断地衰退。 

screenshot-1024x518.png

Flash命运的这一逆转印证了大众早先看法的正确性,即苹果在2010年在iPad上取消对Flash的支持,实则“扼杀”了它的发展。

如果说Flash的衰退是人们早预料到的,那么其他还有哪些技术将会过气呢?下面我们摆出Stack Overflow的数据来研究一下。 

1. 下一种可能消亡的技术 

即使从2011年起,基于Flash的开发活动就开始明显减少,但在过去十年间,Flash依然有其拥趸(有其历史背境的原因)。那么会不会存在其他一些技术,虽然它们表面上看起来良性发展,但实际上在过去的几年内,已经在慢慢衰退呢? 

要回答这个问题,先来看看Stack Overflow上这几年发布的问题帖子,也即我们的Trends(趋势)工具所用的数据。通过考察过去五年内的趋势(包含了一度增长、达到峰值,然后开始衰退的各种技术标签),然后评估每种技术的衰退速率。这是公共数据(你可以利用这一查询来自己下载),我也很希望其他人来自己调查一下。

如果关于某一技术的相关问题每年平均减少了至少10%,那么我们就认为这项技术处于衰退状态。按照这一标准,我们看看快速衰退的技术都有哪些? 

estimates-1-1024x1024.png

从2010年起,Stack Overflow上快速衰减的两个技术标签是Flex(一种基于Flash的Web应用框架)和微软的Silverlight。这两种技术衰减的速度甚至超过了Flash本身,尤其是Flex,有关问题数自2010年一度达到顶峰后就开始急速衰减。就它们在网站上的存在状况来看,这些技术已经下降了约2个数量级。   

 

silverlight_graph-1-1024x1024.png

其中一项技术Silverlight已被废弃:微软于2015年宣布,自2021年起,他们将彻底停止支持Silverlight。Flex虽然从技术上受到官方支持(从2011年起,东家由Adobe换成了Apache基金会),但考虑到Flash地位的下降,以及在开发者问题帖中濒危的存在感,很难说这项技术有什么前途。 

 facebook_plot-1-1024x1024.png

主流技术(这里指从2010年起至少有10万问题的技术)倒是很少有显著衰退。自Stack Overflow创立起(2008年),有关微软的Web 框架

ASP.NET的问题有一定的减少。这可能是一种假象,因为刚开始时,论坛并没有太多的C#开发者加入进来。不过这可能也表明,微软技术在Web开发者心中的地位在有所降低。 

Rubyon Rails相关问题差不多直到2011年才开始变得越来越多起来,而后又慢慢减少。随着Swift慢慢将取代Objective-C成为iOS开发首选语言,Objective-C的相关问题也在减少。同样,“iphone”与“ipad”这样的标签也正被有关Apple移动平台的综合性ios标签所取代(有关趋势的相关细节可查看我们的博文)。 

 

by_month_graph-1-1-1024x1024.png

在这段时间内,还有其他一些技术也在快速衰退。Perl的影响力都衰退已经持续了很长时间(然而值得注意的是,比起Flash或Flex这种彻底僵结的标签而言,有关它的每月提问数仍有增长。)有关Facebook 应用平台的相关问题在2012年达到顶峰,但随后也稳步缩减。Eclipse IDE的相关问题在2014年前后开始缩减。Jquery Mobile虽然是自适应式Web开发的一个流行库,但根据问题数,近年来开发者对它的兴趣似乎有所降低。  

2. 从问题被查看次数来考察会不会另有新意?

当然,问题数量并不一定体现相关技术的真实生命力。在遇到一个问题时,开发者往往并不会先提出自己的问题,他们会先搜寻一下现有解决方案。如果论坛上已有很多相关问题存在,用户就会从这些问题中找到方案,而不会再提出新问题。那么对于以上说过的这些技术,是否有些技术的标签,已提出的问题被查看的几率会更大呢? 

下面我们从问题被查看的次数入手来考察,基于从2011年底的流量数据。 

我们能从这些标签的流量上看出相同的衰退特征吗? 

by_month_graph-1-1-1024x1024.png

对于本文已考察过的处于衰减状态的技术标签而言,我们大体可以认为,采用流量与问题数这两种方法所揭示出的结论基本一致。自2012年至今,有关Flash、Flex及Siverlight问题的流量已降至接近零点。ASP.NET与Roby on Rails虽仍占据足够大流量,但无疑在慢慢衰退。Eclipse在2014年前还保持稳定,之后就开始衰退。   

从我们已分析的绝大多数标签情况来看,相对于问题而言,问题的流量往往是一个稍显滞后的指标。一旦某种技术新问题的比例开始减少,问题流量很快也开始减少。注意,这一流量现象的产生原因并非是试图查看新问题这一行为那么简单,因为约98%的论坛流量是由回答非当天问题所产生的。更准确地说,这种现象可能证实了这样一种行为转变:当开发者不再需要对某一技术提出新问题,自然也就不会查看该技术现有解决方案了。 

3. 结论:问题是否能真实地反映出某项技术的生命力?

C++之父比雅尼·斯特劳斯特鲁普(Bjarne Stroustrup)曾经说过:“只有两种编程语言:一种是受人针砭的,一种是没人使用的。”我认为在大部分情况下,他的这种看法也适用于提问。  

我们这些数据团队的人经常会通过论坛问题数量(或查看次数)来研究技术的生命力。针对此法的批评意见也有很多,他们认为问题数或流量真正揭示出的是对某项技术感到困惑的人所占的比例,而更习惯于此技术的人(或称熟练用户)可能并不需要提问。诚然,任何一项标准的误差与缺陷都不容忽视,某项技术的熟练用户确实也是应考虑的一项干扰因素。

不过,我依然认为Trends数据可以给予重要启迪。首先,问题会有穷尽吗?我不认同,因为这比我们说世上该写的书都写完还要荒谬。迄今为止,论坛上有140万个JavaScript问题,然而问题数量还在稳步增长。如果有关JavaScript的问题都问光了,我们又何必继续问下去呢? 

其次,如果某项技术的使用者都已能完全熟练地使用它,则意味着该技术社区已经陷入停滞。某项技术生态环境是否具有生命力,其中一点就在于新用户能否源源不断地涌入其中,以及是否有大批专家在不断地研究平台的缺陷。这两类用户都会在其工作进程中经常提问。回到2011年,某位Flash开发者可能会辩解道:“的确,有关Flash的问题数量最近是在缩减,但那是因为它的开发文档对我们很有帮助,大家都知道该怎么用了。”只有时间能揭示出真实的情况。

以后我会给大家谈谈根据论坛上的问题数量,看看哪些技术在快速增长,以及这对于技术生态有何影响。

原文链接:https://community.clouderwork.com/article/view/598aa6470c080.html

本文转载自:

共有 人打赏支持
一匹骏马
粉丝 1
博文 3
码字总数 0
作品 0
杭州
程序员
Google 删除 Android 商店中的 Flash 应用

众所周知,苹果不允许Flash应用程序出现在iTunes在线商店中,近日有传言称,Google也要步此后尘,禁止Flash应用在Android Market中展出。 Kongregate开发的一款Flash小游戏在日前被Google从A...

红薯 ⋅ 2011/01/21 ⋅ 9

Win8是否会和Vista一样惨败?

今天装了Win8,试用了几个小时,用VS2011 Beta编译了一下Metro应用,然后突然想到Win8极有可能步Vista惨败的后尘,大家怎么看?

不流泪的机场 ⋅ 2012/03/01 ⋅ 20

Spring MVC Flash Attribute 的讲解与使用示例

Spring MVC 3.1版本加了一个很有用的特性,Flash属性,它能解决一个长久以来缺少解决的问题,一个POST/Redirect/GET模式问题。 正常的MVC Web应用程序在每次提交都会POST数据到服务器。一个正...

qq58ef2349113e9 ⋅ 2017/04/13 ⋅ 0

优化js脚本设计,防止浏览器假死

今天有个需求需要在浏览器端处理大量数据,但怕浏览器在处理数据的同时,浏览器卡主或提示脚本运行过慢,对客户造成不好的体验。需要优化处理js。 在Web开发的时候经常会遇到浏览器不响应事件...

leamon ⋅ 2016/01/05 ⋅ 1

Flash 插件又被曝出新漏洞,让攻击者可以控制 Mac

Adobe 今天宣布,新发现了 Flash 插件中的安全漏洞可以允许攻击者远程控制 Mac、PC 和 Linux 电脑。Adobe建议用户尽快升级系统中的 Flash 插件。这次的漏洞影响 Mac 平台上13.0.0.201或更早版...

oschina ⋅ 2014/04/29 ⋅ 27

谷歌支持备受争议的跨太平洋贸易伙伴关系

泛太平洋贸易伙伴关系(TPP)是一个有争议的贸易协议已经被许多人批评,认为它限制隐私和言论自由,以及缺乏透明度的。谷歌刚刚宣布,它支持TPP。尽管TPP已经被奥巴马政府在2月份签署,它仍然...

oschina ⋅ 2016/06/12 ⋅ 80

STM32 串口ISP下载方式解读

 http://blog.sina.com.cn/s/blogb09739ab0102v4rm.html FlashLoaderDemonstrator下载工具的安装 1.硬件的连接和设置 串口ISP下载方式(对应开发板BOOT0为1、2引脚,BOOT1为2、3引脚) ...

chengde6896383 ⋅ 2017/12/13 ⋅ 0

Flash 死局已定,有人很伤心

当 HTML5 问世之后,距离实现 Flash 被淘汰的预言又迈近了一大步,尽管 Adobe 在尽可能地通过更新和维护来提升 Flash 的实用性和兼容性,不过江河日下的处境依旧不改,然而从今年7月开始,M...

oschina ⋅ 2015/10/01 ⋅ 44

一位淋巴癌患者的妻子的话

下面是我在译言上看到的一位淋巴癌患者的妻子的留言,全文转贴。 ===================== 病人已于6月22日晚辞世。与他相伴4年来,始终清楚他的辛苦与不易。有时候,离世未必不是一种解脱。他...

阮一峰 ⋅ 2007/07/22 ⋅ 0

14. 读大疆与白帽子的故事有感

Secure 今天看到一则新闻《大疆 VS “白帽子”,到底谁威胁了谁?》,大概内容讲的就是今年八月份大疆推出了了 Bug Bounty 项目,鼓励白帽子提交漏洞,然后根据问题的严重程度给不同级别的奖...

pengisgood ⋅ 2017/11/22 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

PHP语言系统ZBLOG或许无法重现月光博客的闪耀历史[图]

最近在写博客,希望通过自己努力打造一个优秀的教育类主题博客,名动江湖,但是问题来了,现在写博客还有前途吗?面对强大的自媒体站点围剿,还有信心和可能型吗? 至于程序部分,我选择了P...

原创小博客 ⋅ 18分钟前 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 43分钟前 ⋅ 0

浅谈设计模式之工厂模式

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻...

佛系程序猿灬 ⋅ 今天 ⋅ 0

Dockerfile基础命令总结

FROM 指定使用的基础base image FROM scratch # 制作base image ,不使用任何基础imageFROM centos # 使用base imageFROM ubuntu:14.04 尽量使用官方的base image,为了安全 LABEL 描述作...

ExtreU ⋅ 昨天 ⋅ 0

存储,对比私有云和公有云的不同

导读 说起公共存储,很难不与后网络公司时代的选择性外包联系起来,但尽管如此,它还是具备着简单和固有的可用性。公共存储的名字听起来也缺乏专有性,很像是把东西直接堆放在那里而不会得到...

问题终结者 ⋅ 昨天 ⋅ 0

C++难点解析之const修饰符

C++难点解析之const修饰符 c++ 相比于其他编程语言,可能是最为难掌握,概念最为复杂的。结合自己平时的C++使用经验,这里将会列举出一些常见的难点并给出相应的解释。 const修饰符 const在c...

jackie8tao ⋅ 昨天 ⋅ 0

聊聊spring cloud netflix的HystrixCommands

序 本文主要研究一下spring cloud netflix的HystrixCommands。 maven <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-clo......

go4it ⋅ 昨天 ⋅ 0

Confluence 6 从其他备份中恢复数据

一般来说,Confluence 数据库可以从 Administration Console 或者 Confluence Setup Wizard 中进行恢复。 如果你在恢复压缩的 XML 备份的时候遇到了问题,你还是可以对整个站点进行恢复的,如...

honeymose ⋅ 昨天 ⋅ 0

myeclipse10 快速搭建spring boot开发环境(入门)

1.创建一个maven的web项目 注意上面标红的部分记得选上 2.创建的maven目录结构,有缺失的目录可以自己建立目录补充 补充后 这时候一个maven的web项目创建完成 3.配置pom.xml配置文件 <proje...

小海bug ⋅ 昨天 ⋅ 0

nginx.conf

=========================================================================== nginx.conf =========================================================================== user nobody; #......

A__17 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部