Hello World
Spiga

Silverlight与微软技术(上):微软抛弃Silverlight了么?

2010-11-02 13:10 by 老赵, 6312 visits

话说,在最近的PDC上,微软的副总裁Bob Muglia说了类似的话“我们对Silverlight的策略改变了,我们要用HTML5来实现跨平台的应用程序”,于是乎,社区铺天盖地响起了“微软要抛弃Silverlight”的调调。出现这个说法并不奇怪,媒体转述一遍,再给社区理解一下,很正常。但是我觉得奇怪甚至有些恶心的是,当事实愈发明朗化的时候,冒出的一些莫名其妙,兴灾乐祸,事后诸葛还在愈演愈烈。这两天我在社区里看的很多说法,某些“评论家”连一些基本概念,如“Silverlight是Windows Phone 7的开发平台”都不清楚,就来捕风捉影,实在让我难以继续旁观。

其实Bob Muglia的原话是这样的:

"Silverlight will continue to be a cross-platform solution, working on a variety of operating system/browser platforms, but HTML is the only true cross platform solution for everything, including (Apple's) iOS platform.

Silverlight将继续是一个跨平台的解决方案,未来Silverlight将持续工作在各种操作系统/浏览器平台上,但是HTML才是目前一切运用真正跨平台解决方案,包括苹果的iOS平台。

这句话的问题在哪里?我看不出任何要放弃Silverlight的意思。微软从一开始就说Silverlight将会跨操作系统及浏览器运行,目前是,将来也是,包括Windows,Mac OS及这些平台上的各种浏览器。但是,对于移动设备又能怎么办呢?苹果的iOS上已经拒绝Flash进入,因此拒绝Silverlight也是可以预料的,因此Silverlight方面就算尽再大努力也无法实现这点。而苹果是支持HTML 5的,因此微软为了发展,将HTML作为“跨所有平台”的手段,在我看来十分顺理成章。可能Silverlight以后不会进入iOS,但并不表示它不会进入Android等其他手机平台,而就目前来说,Silverlight本身已经是Windows Phone 7的开发平台了。

Silverlight之于Windows Phone 7,WPF之于Windows,就好比CocoaTouch之于iOS及Cocoa之于Mac OS,它们都是十分正常的产品及开发平台策略。就拿苹果来做例子吧,CocoaTouch只能工作在iOS系统上,您担心CocoaTouch被苹果抛弃吗?诚然,微软的手机才刚刚起步,平板电脑更是没有踪影,从商业上来说远不如iOS设备成功,但是人人都能看到微软对Windows Phone 7的重视,WP7是微软不断强调的“三屏一云”战略的重要组成部分,而Silverlight就是WP7上的开发环境,那么您为什么会担心它会被微软抛弃?我看到有些文章的标题类似于:“Silverlight失败,未来属于移动互联网”,于是我就转不过脑子了,Silverlight对于微软来说,就几乎等同于“移动互联网”,您一边看好移动互联网,一边觉得Silverlight挂了,你让微软情何以堪?

有人说,这次的PDC 2010都没有Silverlight的内容了,可以看出微软不要Silverlight了,否则怎么没有Silverlight 5的消息?我也觉得很奇怪,PDC是有主题的,这次的主题是Azure,IE 9和WP 7,因此强调的是云计算,HTML 5和移动互联网开发,最后一个其实就是Silverlight。事实上Silverlight的内容本就没少,只是换了个名字叫做WP 7。我不知道嚷嚷着PDC没有了Silverlight的同学有没有真正看过PDC,不过我在看,看了很多,感觉很爽。我看到了PDC的Keynote演讲上ScottGu就在现场操练Silverlight开发,分会场里也在大谈“基于Silverlight开发面向Azure平台的WP7应用程序”、“优化WP7中Silverlight程序性能”,“早该知道的WP7开发注意事项”,还有与WP7几乎无关的“使用Silverlight 4开发商业应用”,“如何在WPF和Silverlight中共享代码”等等太多内容。半年前的MIX 10大会上微软还在大谈Silverlight和WP7,只不过打得是Silverlight的旗号,而仅过了半年,微软打着自己正在全力推广的WP7的旗号来谈几乎相同的话题,您怎么就突然崩溃了呢?

PDC是微软专业会议,议程及其有限,而微软的技术实在太多,没有登上PDC讲台的话题实在太多太多了。去年的PDC还有关于CLR、虚拟化、Windows Server的话题呢,这次都看不到了,莫非微软要抛弃这些了?如果像某些同学希望的这样,微软发布了Silverlight 5的消息,我估计对于微软铺天盖地的谴责之声就要变成“技术发展太快”了。

如果说CocoaTouch只是在iOS设备上运行,而Silverlight除了Windows Phone 7以外,之前Windows和Mac OS上该有的还有,已经在的还在。Silverlight对于微软的重要性,不会比CocoaTouch对于苹果的重要性来的差。作为一个Silverlight开发人员原本该干什么,现在还是干什么,除此之外,退可开发WPF,进可出手WP7。ScottGu在PDC上接受Scott Hanselman采访时说,微软将开发语言、框架、工具进行统一,让开发人员可以很自如地进入WP7的开发领域。我对WPF和Silverlight一窍不通,但我从没像现在这么羡慕您已经掌握了这部分技术(当然其实也没那么羡慕啦,我相信自己会学得很快),因为在移动互联网的大潮下,我可能以后还真要去学习WP7上的Silverlight开发,而您已经可以顺利过渡了。

如果您还是对Bob的那段话表示纠结的话,其实也可以继续看看他的说法了。他和微软Silverlight团队估计也没想到,当然现在也意识到事态的严重性,于是连续发表了两篇声明,一是微软对Silverlight未来的担保,二是关于PDC上关于Silverlight那些表态的后续解释,其中写到:

I said, "Our Silverlight strategy and focus going forward has shifted." This isn't a negative statement, but rather, it's a comment on how the industry has changed and how we're adapting our Silverlight strategy to take advantage of that.

我之前说到:“我们的Silverlight策略和前进的重心转移了”,这不是一个负面的说法,它只表示业界的现状改变了,我们调整Silverlight的策略希望可以利用这种改变。

在我看来,业界现状的表现之一,就是之前我所说的苹果不会接受Silverlight和Flash,但它对HTML 5友好。微软不强求Silverlight进入iOS——这是Bob之前所特地强调的设备——而是让Silverlight去迎合HTML 5大潮。例如,Adobe在刚刚结束的MAX 2010大会上展示了一款Flash至HTML 5的转化工具,那么我猜想,微软今后也会这么做吗?利用Flash和Silverlight所配备的高度生产力与HTML 5相抗衡也不失为一种竞争手段。当然,谁知道呢。此外,文章里还谈到过几个月就有下一代Silverlight的消息了,不知道这能否让某些朋友松一口气。

讨论和争议是好事,但是在这个过程中出现了一些声音让我很不满。例如某些同学连Silverlight与WP7的关系都不知道就来指点江山。Ivony写到过类似的意思:社区里有一些人,看着某个事物不断发展却无力接触,一遇任何风吹草动却跳出来幸灾乐祸,正如这次Silverlight事件,还有上次微软于LINQ to SQL等等。我不知道上次的那些认为微软放弃LINQ的同学,看到.NET 4.0中LINQ to SQL的更新,LINQ to Entity在最近两届PDC中的表现,以及本次PDC上随Azure出现的“LINQ to Azure,LINQ to Everything”的演讲是什么感觉。

微软的技术一定是有问题的,但是我们完全可以用合适的方式来对待,受用无穷。当然,这方面内容就下次再展开了。

相关文章

Creative Commons License

本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名赵劼(包含链接),具体操作方式可参考此处。如您有任何疑问或者授权方面的协商,请给我留言

Add your comment

31 条回复

  1. andreas
    113.137.215.*
    链接

    andreas 2010-11-02 13:21:25

    沙发?第一次坐沙发。

  2. mcpssx
    59.175.192.*
    链接

    mcpssx 2010-11-02 13:39:01

    我觉的你说的这个理由:

    微软将开发语言、框架、工具进行统一,让开发人员可以很自如地进入WP7的开发领域。我对WPF和Silverlight一窍不通,但我从没像现在这么羡慕您已经掌握了这部分技术(当然其实也没那么羡慕啦,我相信自己会学得很快),因为在移动互联网的大潮下,我可能以后还真要去学习WP7上的 Silverlight开发,而您已经可以顺利过渡了。

    完全可以作为未来微软抛弃silverlight的理由,未来微软同样可以说,各位只要掌握了html和js的就可以开发我们的手机。

    为wp7转换开发模型叫好的大都是原来不做手机开发的,自然觉得爽了,而原来用eVC和eVB做微软手机开发的等于又要从头学起。

  3. Duron800
    207.46.92.*
    链接

    Duron800 2010-11-02 13:56:56

    只能说有病的人太多,中国人就擅长这个,越传越扯。

    这边也站个坑儿吧。

  4. andreas
    117.36.6.*
    链接

    andreas 2010-11-02 14:29:41

    @mcpssx: 为wp7转换开发模型叫好的大都是原来不做手机开发的,自然觉得爽了,而原来用eVC和eVB做微软手机开发的等于又要从头学起。

    我是做iphone的开发的,学习wp7也没发觉学习成本有多高。这算是完全的从头学起吧。再说了,我以前会骑自行车,但是不能因为还得从头学起就不买车,一辈子骑自行车吧。很多人貌似都是因为懒惰和对未知事物的恐惧找各种各样的借口。

  5. meback
    114.255.238.*
    链接

    meback 2010-11-02 15:20:44

    我觉得Microsoft收购Adobe,将Flash与Sliverlight整合才是王道,这样就不怕苹果的拒绝。 对Microsoft和Adobe双方来讲都不错。

  6. 链接

    韦恩卑鄙 @waynebaby 2010-11-02 15:32:57

    @mcpssx: 为wp7转换开发模型叫好的大都是原来不做手机开发的,自然觉得爽了,而原来用eVC和eVB做微软手机开发的等于又要从头学起。

    那些搞移动开发的兄弟们早九扔掉evc跑去搞爱疯案桌去鸟 回头看你这么说实在是有点·&#……*!·&#

  7. CheerSun
    125.46.17.*
    链接

    CheerSun 2010-11-02 16:13:30

    Say Noting~

  8. 链接

    qingliuyu 2010-11-02 17:28:11

    还没接触sl,看样很棒啊

  9. 链接

    装配脑袋 2010-11-02 19:21:29

    今天怎么PDC视频都不能看了呀。。。

  10. 老赵
    admin
    链接

    老赵 2010-11-02 20:03:16

    @装配脑袋

    我都可以看呀……

  11. 链接

    zsbfree 2010-11-02 21:00:40

    @mcpssx: 因为,微软知道他只能折腾微软的程序员,而对其他人他是不能动不动推倒重来的。微软wp7的开发手段全部换掉,当然只会影响原来开发微软手机的人。您原来根本就没有开发过wp7的,您能有什么损失?

    又是你个xx

  12. jeffreydan
    114.249.157.*
    链接

    jeffreydan 2010-11-03 11:36:51

    鄙人愚见,wpf主要攻winform平台,sl攻web平台,由于在互联网的应用上,MS一向比较慢半拍,在RIA这块是被flash独占大部分市场的,SL的推广的确是很缓慢的。至于SL的走向怎么样,就得看wp7走向怎么样了,听说,MS为了推广wp7,内部发放了N台吧。

  13. mathgl
    116.252.17.*
    链接

    mathgl 2010-11-03 12:13:34

    不知道有谁用过 moonlight没。。我甚少用wpf以及相关的东西,现在有些兴趣...

  14. kw2010
    206.210.105.*
    链接

    kw2010 2010-11-03 20:41:01

    不了解 SL 定位的人主要还是对软件 rich vs reach,security, deployment 的市场细分不熟悉。具体就懒得敲了... 楼主好耐心...

  15. syuko
    220.249.100.*
    链接

    syuko 2010-11-04 23:01:11

    silverlight确实是个很不错的RIA技术和平台。而且Silverlight不一定非得就是个纯的Web方式,就必须在浏览器中运行,只要你喜欢Silverlight程序一样可以跳出浏览器直接运行,在外观和启动方式上跟普通的CS程序没什么两样。而且Silverlight性能没那么差,我做通信网管系统的,在服务器端可以和前台的silverlight客户端程序建立一个推模型,数据可以从服务器上直接推给客户端而不是必须要客户端去拉数据。而且Silverlight的控件模型我个人感觉还是设计的非常不错,控件自定义程度真的非常的高。举个例子在asp.net程序里要做个好看的按钮,图片是用样式控制“浮”在按钮上的,在silverlight里面你可以把图片通过外观定义直接变成按钮的一部分,就像在ASP.net里要让一个按钮变成圆形的,要么自己写一个按钮要么用个图片代替,在silverlight里不用自己去重新写一个按钮,只要通过自定义外观就能做到,可以让一个矩形的按钮真正的变成圆形的。在asp.net里GridView有个模板列,在模板列里自己可以加入任何UIElement,但想在一个Button里加入任何一个UIElement就是个麻烦事,但在silverlight里只要你喜欢你可以把一个Datagrid控件加到Button的内容模板里面去。我只是从控件模型这个最基础的方面说了一下Silverlight和asp.net的一点差异,从这点差异可以看出silverlight在RIA方面确实很努力。Flash也好,不过Flash更偏向于设计人员,而SL更偏向于编程人员,个人还是非常看好SL的,希望SL有个好的未来。希望SL在RIA,Web 2.0,Web N.0里能有杰出的表现。

  16. andreas
    117.22.6.*
    链接

    andreas 2010-11-05 17:39:49

    @mcpssx

    我觉得你这样的说法给人的感觉是:在你看来从旧有的东西转向新的东西是一种负累。这种转变让你觉得吃力,迷茫,所以你不喜欢。因为你不得不放弃可能多年的投入,从本来擅长的领域转向一个不熟悉的地方。 对我来说也有这种感觉,偶尔也有。我以前是搞C++的,后来转向了.net。同时因为很喜欢apple的漂亮界面或者是漂亮理念,所以还学习了iphone开发。 在这些转变中,从C++到.Net的转型不是自愿的,只是工作需要。我也有过和你类似的心情。只是很快我就发现了.net迷人的地方。原因在于兴趣,我对一些事情是如何发生的,很有兴趣。用C++的时候,在控制台输出一个字符串,很简单的一句代码,我感兴趣的是这是如何发生的。同样到用C#输出一个字符串的时候,我也很感兴趣背后有什么东西发生。 所以,即便是放弃一些以前就熟悉的,重新学习新的东西,我也觉得很快乐,因为我的乐趣在于发现:这些是如何发生的?

    而在我看来,你感兴趣的不是这个,你感兴趣的是如何用自己已有的技术保住饭碗,是为了生计而不是一种学习的狂热兴趣。这种事情真的不能勉强,对很多人来说工作就是工作,只是个饭碗,所以遇到这种需要转变的时候,往往很迷茫并且厌恶新鲜事物,因为它对你的饭碗造成了威胁。

    入错行,或者是入了自己不喜欢的行,真的是很不幸的事情。因为你要是很有兴趣,那么面对新东西的时候只会觉得很兴奋,而不是觉得是个灾难。所以说如果能够的话,就让自己去感兴趣,培养兴趣;如果实在没办法,想想自己喜欢什么,然后该干嘛干嘛。人生苦短,何必跟自己过不去。

  17. mcpssx
    59.175.192.*
    链接

    mcpssx 2010-11-08 08:59:37

    @andreas

    我现在根本就不依赖于.net、C++或java工作。

    对这些语言的研究基本上就是兴趣而已,其实我用F#的时候,应该比这些号称热爱.net的大多数人早的多。

    有一句话叫做“路线错了,知识越多越反动”,光靠学习的狂热,而走了错误的方向,只能越错越远。

  18. mcpssx
    59.175.192.*
    链接

    mcpssx 2010-11-08 09:04:18

    其实用.net语言的人的学习热情从行业平均比起来是比较差的,基本上局限在.net的这个平台,论分享精神,从国内的开源项目来看,.net贡献的项目连delphi的都没有达到,

    delphi还有springdelphi,cnpack,DGL等等。

    但是.neter最爱说的就是别人都不爱学习,不求进步。

  19. 链接

    陈梓瀚(vczh) 2010-11-08 14:48:21

    @mcpssx

    我真觉得,他们不爱学习哈。我怎么不见得我学了C#之后就退步了,把数据结构操作系统编译原理什么都忘了呢?

  20. StrongBird
    168.159.144.*
    链接

    StrongBird 2010-11-15 17:14:20

    @mcpssx

    这位老兄您太伟大了,把技术上的争论都推上路线斗争的高度了。五体投地啊!

  21. edie
    120.199.4.*
    链接

    edie 2010-11-29 18:57:48

    虽然SL很强大,从1.0关注到4.0,但是还是不敢用。

    虽然XNA很厉害,从1.0关注到4.0,也是不敢用。

    WP7虽然都支持,但是再没有绝对把握或者能给自己带来利益起来之前,我还是会谨慎观望,毕竟程序员还是要吃饭的。MONO也是如此,在完全成熟前,不会用到项目中。

    看来只有老赵去研究一些新的前卫的东西了。

    不如把c#搞得精通些。

  22. 老赵
    admin
    链接

    老赵 2010-11-29 19:35:56

    @edie

    新不新,敢不敢,前卫不前卫,成熟不成熟,都是你一厢情愿的判断而已。你老是担心吃不上饭,所以不敢去尝试一些东西,你有没有想过,正因为如此所以你老是担心吃不上饭?

    别的不敢说,但我相信排斥或是搞不定mono的.NET程序员一定算不上优秀的.NET程序员。

  23. xin
    61.145.242.*
    链接

    xin 2010-12-08 12:04:01

    哈哈,我学linQ的时候刚好是他们在说linQ要被微软放弃的时候,不过我照样学了

  24. Xin
    121.15.225.*
    链接

    Xin 2011-07-16 22:29:47

    OK,Html5是绝对不能开发出这样的Silverlight表单设计器的: http://crmwin.com/FreeForm.html

    在高级企业应用方面,Flash和Silverlight还是可以鄙视Html5的。

  25. 木木勇
    14.151.147.*
    链接

    木木勇 2012-04-02 23:02:22

    要说C#好,首先跨平台,windows相对linux来说不稳定

    要说微软好,IE6就跟吃过shi一样,还这么久之后才升级,搞到直到现在都还那么多人在用IE6,

    ie9的性能也远远不够chrome好,还绑定了操作系统...

    想要在互联网上站住脚,首先得开发出像样的javascript引擎,学学人家google的V8,效率,chrome里面还有javascript和css和html的优秀调试工具,还开放源代码

    silverlight和flash---无论做的再好,再炫,始终需要在浏览器安装插件,html5+javascript才是王道

  26. 老赵
    admin
    链接

    老赵 2012-04-03 10:59:01

    @木木勇

    C#早就跨平台了;Windows相当稳定;IE6用的最多的是天朝盗版用户;IE9性能很好不信自己去跑跑看JavaScript效率测试;IE6时代就有很好的几百K的调试器了,只不过没集成而已,IE9、10的开发者工具也都很不错;浏览器安装插件有没有问题没那么简单,你不也在内置IE的情况下额外安装其他浏览器了么。

    总而言之,您洗脑洗得真干净,看你那么挺HTML5,我猜你对HTML5和JavaScript的了解还没我多。

  27. 235
    221.10.60.*
    链接

    235 2012-06-06 12:11:16

    开放win32接口就是微软放弃SL最好的解释。(不做饭了,给你厨房自己做去。)

  28. leo
    121.8.107.*
    链接

    leo 2012-08-27 17:02:46

    别的不敢说,但我相信排斥或是搞不定mono的.NET程序员一定算不上优秀的.NET程序员。

    不敢苟同,呵呵

  29. 老赵
    admin
    链接

    老赵 2012-08-28 09:47:35

    @leo

    那给理由。

已自动隐藏某些不合适的评论内容(主题无关,争吵谩骂,装疯卖傻等等),如需阅读,请准备好眼药水并点此登陆后查看(如登陆后仍无法浏览请留言告知)。

发表回复

登录 / 登录并记住我 ,登陆后便可删除或修改已发表的评论 (请注意保留评论内容)

昵称:(必填)

邮箱:(必填,仅用于Gavatar

主页:(可选)

评论内容(大于5个字符):

  1. Your Name yyyy-MM-dd HH:mm:ss

使用Live Messenger联系我