Three dying platforms: Flash, Silverlight, Win32
2011年11月28日
By
Tim Anderson
Categories:
Mobile Rants and Raves Skills Web TechnologiesTags:
adobe android apple flash google html5 ios microsoft
It is a little early for a review of the year, but not too early to state that 2011 has brought profound changes to the software development world. Although I am thinking mainly of the client, I would also argue that client and server are so intertwined that both are affected. As an example, I have heard developers moving away from SOAP web services not because of any conviction that REST is a better approach, but because the move away from Windows and towards HTML clients makes SOAP web services more difficult to consume.
So what's changed? Simply put, three platforms which once seemed strategic are now in obvious decline. Getting the nuance right for these platforms is tricky. Lots of software still runs and is still widely used long after it has ceased to be strategic for the company which supports it. All the platforms mentioned negatively below are still in active development; they are not going away and will still be running ten years and more from today. They come with health warnings though: depending on these platforms means that your software will gradually become more difficult for users to run and will be left behind by new technologies.
The decline of Silverlight
In the run up to the launch of Microsoft's Visual Studio 2010 I spoke to a number of Microsoft platform developers. The consensus then was that Silverlight was very important and possibly the future of Microsoft's client. The view was supported by the company's energetic development efforts for Silverlight. It also made a lot of sense: a lightweight, secure, cloud-centric client that escaped the GUI limitations of Win32, worked in the browser or as a desktop application, and as a bonus run on Mac as well as Windows. Silverlight, as I noted in several articles, is client-side .NET done right.
This is not the place to write a long screed about why Silverlight failed, but rather to note that at the end of 2010 it became obvious that Microsoft was changing direction. At the Professional Developers Conference, October 28-29 2010, it was hardly mentioned, and the company focused instead on HTML and Internet Explorer 9. The full extent of its new strategy was not shown until this year, at the BUILD conference in September.
It is not only external developers that were surprised by what seemed a sudden change of direction. The same seems to be true of many within Microsoft itself. Nor am I sure exactly when someone decided that Silverlight was no longer strategic, though there are clues in the Silverlight release schedule. When Silverlight 4 was unveiled in November 2009 it was still ascendant. Silverlight 5, due out shortly, suggests that it was still considered important in early 2010. Visual Studio LightSwitch released this year was likely planned in part as a way of boosting Silverlight, since it builds Silverlight applications. But nobody is talking about Silverlight 6.
Silverlight is still the development platform for Windows Phone 7, but many observers, myself included, believe this will give way to a variant of the new Windows Runtime (see below) in a future version.
This has been a costly experiment for Microsoft. If the company had done the Windows Runtime, rather than Silverlight, back in 2007, imagine how much stronger would be its position now. That said, it is not all wasted. XAML, the presentation language in Silverlight and in Windows Presentation Foundation, continues in the Windows Runtime, and so does the essence of the cloud-centric, client-secure development model.
Adobe Flash Deprecated
Back in 2007 Silverlight seemed to be in part a competitive response to the increasing popularity of Adobe Flash. This month though, Adobe went though wrenching changes of its own, announcing the end of Flash on mobile browsers and a fundamental shift in business strategy away from enterprise development and towards content creation and distribution.
There are plenty of parallels with the Microsoft case. One is that the changes also came as a surprise to many within the company, who just a few weeks before, at the MAX conference in Los Angeles, were talking confidently about the future of Flash and of Flex, the application-centric SDK for Flash. Here is Doug Winnie, a casualty of the inevitable layoffs:
The product managers, evangelists, community managers, and developer relations team members found out the news and the way it was communicated at almost the same exact time you did. They are wrestling with the news and your reaction in real time--so please be supportive of them as they dig through everything.
and here is Duane Nickull:
While on the 3rd day of my vacation in Mexico, I got the call with the explanation that Adobe is doing a major refocus and as part of that, many of us "enterprise" types are no longer required. "Ãœberflussig" I guess is the correct German word for the situation. Keep in mind that I now speak as an individual, not as an Adobe employee. I missed most of the official story due to the timing of my vacation but caught up with a few news outlets to get the rationale.
But isn't Flash still going strong on desktop browsers, and the Flex SDK heading for great new things as an open source project at the Apache Foundation? Well, maybe. Adobe is not betting on that though; it is betting on design tools for content, HTML5, and packaging and distributing publications and apps. Its Flash technology is still critical to how that is done under the covers, but Flash itself will be invisible.
Adobe also says that its LiveCycle middleware will continue to evolve in two specific niches:
We will continue to sell and support our LiveCycle products in the government and financial services markets, two areas where the LiveCycle value proposition remains especially strong.
Again, maybe. This sounds more like Adobe keeping faith with some important customers, than a strong future for LiveCycle.
Win32 Deprecated, .NET changes
Microsoft announced another profound change in direction at its BUILD conference in September. Although related to the decline of Silverlight, this one deserves its own heading. What we saw was that the Win32 platform on which Microsoft has built its prosperity for the last twenty-one years or so (Windows 3.0 came out in 1990) is now being shunted aside. "Shunted aside" is the right term because it is still there in the forthcoming Windows 8, but it is side by side with the new Windows Runtime (WinRT) and a touch-friendly user interface called Metro. The company's goal is to create a platform that will succeed against Apple's iOS. It runs on ARM as well as Intel x86 and has its own Windows Marketplace, similar in concept to Apple's App Store.
Leaving aside the merits of WinRT, the big news here is that Microsoft is finally moving away from the Windows desktop on which most of us have done our work day to day for the last two decades. The reasons are obvious: mainly the rise of iOS and the iPad, but also the success of the Mac among developers and at the premium end of the laptop market. Windows was already in decline.
Your Win32 applications will work forever, but Microsoft's energy is now going elsewhere.
What about the .NET Framework on the client? It is still there, and thanks to the excellence of the C# language I expect it will be the most popular approach for coding for Metro. Parts of the Framework will no longer work in Metro though, and it may even be that HTML5 and JavaScript, which is equally well supported, will gradually supplant it. Nor do I take the success of Windows 8 for granted; Microsoft may find the tablet market already largely absorbed by iOS and Android.
That is speculation; but the long-term decline of Win32 is not.
Platforms ascendant
If these platforms are in decline, what the ones that are rising fast? That is simple to answer. Apple iOS, Google Android, and HTML5 in general. Are these good for the next two decades as in Win32, or will be on the deprecated list in a few years? That is hard to say; if I had to rate them in order of likely longevity I would guess this:
1. HTML, JavaScript and CSS
2. Apple iOS
3. Google Android
Predictions though are a dangerous game, and I would be interested in other opinions
[/b]
[b]中文导读:即将过去的2011年见证了技术与行业的许多重大变迁,Flash、Silverlight、Win32三大拥趸众多的主流开发平台在Web和移动的挑战下危机重重。英国资深IT技术记者Tim Anderson最近甚至撰文“Three dying platforms: Flash, Silverlight, Win32”,称三者已经来日无多,来自WebAppTrend的译文全文如下:
现在就来做全年总结似乎还为时过早,但是现在就已经能够看出2011年软件开发领域发生了许多重大而深刻的变革。虽然我是以用户的角度来说的,但是用户与服务提供商一直是紧密联系在一起并相互影响的。举个例子,我听说开发者正从SOAP Web Services转向REST,而他们撤离SOAP Web Services的理由并不是因为REST比其他的方法要好,而是因为用户已经逐渐从Windows转向HTML了,这使得SOAP Web Service不再适合他们的开发了。
具体有哪些变化呢?简而言之,三大平台的战略部署有所减少。三大平台上的变化现在还难以察觉。许多软件在提供商减少投入甚至是停止开发后仍然被广泛使用。而我下面列举的正在衰退的平台,仍然有许多开发正在上面积极部署;衰退并不意味着消失,数十年以后这些平台也许仍然还在运行。我所做的不过是给大家一个善意的提醒:如果你将你的软件部署在这些平台上,那么意味着用户想要使用你的软件将变得越来越困难,而你的软件最终将被新的技术所抛弃。
Silverlight 的衰退
在Microsoft发布Visual Studio 2010时,我曾对开发者表示:Silverlight是非常重要的,并且它有可能成为Microsoft客户端的未来发展方向。而Microsoft的实际开发路线也的确验证了我的想法。Silverlight的确取得了不少成绩:它是一个轻量级、安全的以云计算为中心的客户端,并且不再受Win32的GUI 限制,可以在浏览器或是桌面应用程序中运行,它同时支持Windows和Mac。正如我在之前的几篇文章中提到的,Silverlight是一个非常优秀的.NET客户端平台。
这里并不是要长篇大论讨论为什么Silverlight会失败,而是想要提醒大家在2010年底Microsoft 有意改变开发方向。在Professional Developers Conference(十月 28-29 2010)上,Microsoft 并没有提到他们的新战略方向,而是关注HTML和IE9。直到在今年九月的Build会议上,Microsoft 才正式提出他们的新方向。
不仅仅是其他的开发者对Microsoft 这样的转变表示吃惊,就连Microsoft 内部人员也同样感到意外。虽然在公布Silverlight版本计划时已经有迹象表明Microsoft 有意不再将Silverlight作为公司的主要发展方向,但是我也不知道这个决定具体是什么时候下的。在2009年十一月推出Silverlight4时,公司还有意开发Silverlight 5,这点证明,Silverlight在2010年初还是公司的重要开发计划。今年推出的Visual Studio LightSwitch可以视为Silverlight的升级版,但是Silverlight 6似乎已经不在计划之内了。
Silverlight目前还是Windows Phone 7上的开发平台,但是包括我在内的许多观察员认为,这只是为了给新的Windows Runtime版本一个缓冲期。
这是Microsoft 的一次昂贵的实验。如果公司在2007年的时候就选择Windows Runtime而不是Silverlight的话,那么他将在这一领域取得明显的领先优势。但是,对Silverlight的投入并不是完全在浪费时间。比如Windows Runtime的开发可以继续采用Silverlight中使用的XAML语言,而Silverlight开发中使用的以云计算为中心,有客户端安全机制的开发模型也可以运用到Windows Runtime的开发中。
Adobe Flash已经被放弃了
在2007年的时候,Silverlight还是为了应对Adobe Flash的流行才开发出来的。然而近期,Adobe正在经历一个痛苦的变革,公司宣布结束移动浏览器上的Flash开发。并且出于商业考虑,公司将主要业务将从开发领域转向内容的创建和发布领域。
Adobe的情况和Microsoft相似。公司内部对这一决定也表示相当意外,就在不久前的洛杉矶MAX会议上,Adobe还表示对Flash和Flex的未来充满信心。下面是一些开发者对不可避免的裁员未来的反应:
产品经理,宣传人员,社区管理员,开发团队听到这一消息后的反应和你几乎一模一样。他们都被这一消息吓了一跳。在我去墨西哥旅行的第三天,我收到了Adobe正在做大调整的消息,许多像我这样的“enterprise” 类型员工可能面临裁员。这样的情景在德语中应该叫“berflussig”。我尽量使自己公正客观地评论这件事情。由于放假的原因,我错过了许多官方发布的信息,但是通过媒体的报道还是知道了一些相关的消息。
但是Flash在桌面浏览器上不是仍然占有很大的市场吗?Flex SDK在Apache Foundation的开源项目中不是仍然占有重要地位吗?我只能说,也许吧。但是Adobe已经放弃他们了;现在Adobe的主要方向是为HTML5,封装器,应用程序等开发设计工具。
Adobe同时也表示将会继续维护在以下两个市场中的LiveCycle中间件:
Adobe将继续出售并维护为政府和金融市场提供的LiveCycle产品,在这两个市场上,LiveCycle还有很大的商业价值。
然而,这个发言听来,Adobe似乎只是想让一些重要的客户对Adobe继续保持信心,而不是真的想继续推进LiveCycle。
Win32已被放弃,.NET面临改变
在九月份的BUILD会议上,Microsoft宣布了另外一个重大变化。这一变化或许比Microsoft对Silverlight的策略调整更加重大。Microsoft上的Win32平台已经运行了21年(Windows 3.0在1990年推出),但是现在,Win32平台开发可能将在Microsoft的工作计划中遭受“排挤”。“排挤”这一词是相当准确的,因为在将要推出的Windows 8上,我们还能见到Win32的身影,但是它将逐渐被新的Windows Runtime(WinRT)和Metro(提供触屏的友好界面)所替代。公司的主要目标是开发出一个能够和Apple的iOS抗衡的平台。它既能在ARM上运行,又能在Intel x86上运行,并且有自己的Windows Marketplace(类似于Apple的App Store)。
撇开WinRT的优点不谈,这里最大的新闻就是:Microsoft终于从Windows桌面中走出来了,过去的二十几年里,我们一直都在使用Windows桌面。促成Microsoft转变的原因很简单:面对iOS和iPad的日益崛起,Mac在开发者和笔记本市场取得了巨大成功,Windows的市场正在逐渐被吞噬。
你的Win32程序依然可以运行,只是Microsoft将去寻找新的方向了。
客户端的.NET Framework的命运又将如何呢?我想它还是会继续发展的,由于C#的优秀表现,我认为它会成为Metro上的主流编程语言。但是部分框架可能不再适合Metro,而Metro可能也会支持HTML5和JavaScript。Windows 8是否能成功现在还言之过早,Microsoft可能会发现平板电脑市场早已被iOS和Android瓜分。
这些也许是Metro的炒作,但Win32的衰退已经是不争的事实了。
各种平台方兴未艾
如果上面提到的平台都在衰退,那么又有哪些平台正在上升呢?答案很简单:Apple iOS, Google Android和HTML5。在这些平台中,谁能够像Win32一样在下一个二十年里占据主导地位,谁又会在未来几年里就被放弃呢?现在还很难判断出来;如果非得要我给出一个我看好的平台排名的话,那我觉得应该是:
HTML, JavaScript 和CSS Apple iOS Google Android.

发表评论
-
QTP的2种脚本调用方法是什么
2012-01-20 01:32 472QTP的2种脚本调用方法是什么 2011年06月14日 ... -
让windows批处理脚本在后台运行
2012-01-20 01:32 1313让windows批处理脚本在后台运行 2010年12月24日 ... -
VBS学习笔记(2): Call造成的麻烦
2012-01-20 01:32 490VBS学习笔记(2): Call造成的麻烦 2011年02月 ... -
用vbs实现文本循环读取
2012-01-20 01:32 638用vbs实现文本循环读取 2010年06月16日 因为测 ... -
VBS启动Process
2012-01-20 01:32 635VBS启动Process 2010年06月09日 Run ... -
怎样从大便的性质判断小儿的消化功能?
2012-01-19 09:22 509怎样从大便的性质判断小儿的消化功能? 2011年11月25日 ... -
hehe
2012-01-19 09:22 499hehe 2010年06月01日 缁 -
关于Android的一些设计
2012-01-17 01:56 495关于Android的一些设计 2012年01月13日 ... -
Windows XP的小秘密 {7}
2012-01-17 01:56 472Windows XP的小秘密 {7} 201 ... -
3.1 MFC概述
2012-01-17 01:56 5453.1 MFC概述 2009年12月01 ... -
Platform Builder和Embedded visual C++简介
2012-01-17 01:56 432Platform Builder和Embedded vis ... -
搭建Windows下的Android开发环境
2012-01-17 01:56 602搭建Windows下的Android开发环境 2011年07 ... -
编程,乐趣何在?
2012-01-15 21:04 641编程,乐趣何在? 2011年12月20日 转载自:htt ... -
[评论]Flash,Silverlight,Win32:2011三大垂死平台
2012-01-15 21:04 538[评论]Flash,Silverlight,Win32:201 ... -
在CentOS上安装和配置 OpenNebula(1)
2012-01-15 21:04 701在CentOS上安装和配置 OpenNebula(1) 20 ... -
Flash ActionScript3.0 库资源,很多非常有用的类库哦!!!
2012-01-15 21:03 456Flash ActionScript3.0 库资源,很多非常有 ...
相关推荐
语言:English 自动检查您是否错过了一些很棒的免费码头...此项与DYING LIGHT或Techland无关,但由喜欢和玩游戏的人制作。 注意:*此项目不会记录或保存您的任何数据*此项目要求您在DyingLightGame.com上拥有一个帐户
包括每个选项卡背景上来自游戏Dying Light 2的高清壁纸图像。 安装此扩展程序,以在每个新选项卡上获得游戏“垂死之光”的高清图像! 我们始终会更新图像,因此请随时检查...我们将为您提供5星评级! 如果您有任何...
每次打开新标签时都会获得《Dying Light》不同的高清壁纸。这个新主题除此以外还包括天气,时间,记事本,时钟等其他你想要的强大功能。 《消逝的光芒》是由Techland开发的一款动作类游戏,于2015年1月27日发行。...
School psychology-why is the profession dying? 518 Psychology in the Schools, October, 1978, Vol. 16, No. 4. GLASS, G. V. Educational knowledge use. Educational Forum, 1971, 36, 21-29. GOWIN, D. ...
game MOD
游戏名称必须设置为“ Dying Light” 单击激活。 LiveSplit和游戏时间 如果要根据游戏时间比较拆分结果:右键单击LiveSplit的窗口->比较依据->游戏时间 备用计时方法 如果要在布局中同时显示“游戏时间”和“实时...
Me and Earl and the Dying Girl 2:30pm Call Me Lucky 12:00 | 2:30 | 5:00 | 7:30 | 10:00pm Sneakerheadz 10:00pm Bolshoi Ballet: Ivan the Terrible 7:30pm Catch Me Daddy 12:00 | 5:00pm Reset 9:55pm #安装...
垂死之光Vulkan DLVK很简单: 表现 化妆品 效率 最初使用和渲染API以及使用着色语言对游戏进行 DLVK不是: 作弊的载体 一般的作弊 这在任何方面都没有提供比其他参与者有意的不公平优势。... 我也是GitHub的新手,...
Rateless coding transmission over multi-state dying erasure channel for SATCOM
本资源为数字图像处理中的一个作业,注意下载者请稍加修改代码,避免重复率过高,代码为c++编码,主要采用C语言中内容,可实现BMP图像的压缩与解压缩,且压缩是无损压缩。可直接运行。Anhui university同学们尤其...
简单的android class-instances提供者 像这样将类放入SingletonContainer中: SingletonContainer.put(someObject) 或者: SingletonContainer.putForActivity(someObject, this) 并在任何地方获取实例: ...
语言:English 人生苦短,别浪费时间! :] 简单的扩展即可替换您的“新标签”屏幕,并记住您寿命短,所以请不要浪费时间! :]受@maccman扩展名的启发:...
python基础-类成员变量-提供python2代码,可以直接测试,部分代码如下 class Person: '''Represents a ... '''I am dying.''' print '%s says bye.' % self.name Person.population -= 1 if Person.population
Flash, JavaScript, image links, and other non-readable content 248 Poor site architecture 250 Table of Contents [ viii ] Expert site architecture with manual links and PageRank sculpting 251 Over-...
Is ASP.NET a Dying Technology? ASP.NET is not a dying technology but rather a technology going through a transformation. ASP.NET Web Forms, which was all there was to ASP.NET before the MVC Framework...
School psychology-why is the profession dying? 518 Psychology in the Schools, October, 1978, Vol. 16, No. 4. GLASS, G. V. Educational knowledge use. Educational Forum, 1971, 36, 21-29. GOWIN, D. ...
死光下面的壁纸和新的标签扩展为您的Chrome浏览器带来了新的面貌。 垂死的光以下“墙纸和新标签页”扩展程序使您的浏览器焕然一新,并提供了一些有用的工具。 支持语言:English
本文在此介绍一种基于分立元件构成的电池自动恒流充电电路,重点阐述了电路的组成、结构特点、工作原理及电路的调节。
// how long the particle lives for before dying float _age; // current age of the particle D3DXCOLOR _color; // current color of the particle bool _isAlive; }; class Parical { public: ...