Silverlight作为Web应用程序技术的角色引发争论
时间:2010-09-15 来源:cnblogs
开发者平台产品管理部经理,Brad Becker博文中表示微软对Silverlight在HTML5的前景持乐观态度。尽管有人不把Silverlight看做真正的Web应用程序工具,而把它当做服务于Web开发市场某一领域的技术。
Becker认为当前HTML主要由Flash和Silverlight两大插件技术所主导:
HTML正采取像Flash和Silverlight等插件技术作为标准。由于这些功能在Web上非常流行以至于用户已把这些功能视为基本需求,故这样做很有必要。因此Web的技术需求起点会比以往有所提高。
与此同时,他认为用户的期望值也越来越高,用户需要的不仅是静态页面,而是像Silverlight那样的动态技术:
在Web层面上,Silverlight的初衷并非取代HTML。而是要让程序员轻松地实现HTML和其他技术无法完成的功能。微软致力于使用Silverlight实现HTML无法完成的解决方案来扩展Web功能。从单纯的丰富HTML页面到浏览器中功能强大的类桌面应用程序,甚者Silverlight能给用户带来丰富的体验。
Becker提到Silverlight提供了HTML5所缺乏的主要功能,这使得微软技术更适合视频和媒体应用程序:
- 高清视频格式H.264和VC-1
- 包含DRM技术的内容保护
- 3D视频
- 多播系统
- 支持现场直播
- (自适应)流媒体技术
- 信息叠加即多画面技术
- Silverlight诊断框架支持
他还提到Silverlight比HTML5更完善的三个领域:
- 性能——Silverlight采用CLR使得性能更加完善,在Bubblemark的多项标准化测试中击败Flash和Chrome V8
- 一致性——内置于Silverlight的应用程序在任何平台上呈现出相同的内容
- 速度——当HTML5仍在讨论阶段时,Silverlight在速度上远超出市场的平均水平
最后,Becker不忘把大家的目光转移到Silverlight不仅是浏览器插件,同时在桌面部署和移动设备上,让开发人员可进行跨平台开发。
针对Becker的博文,JetBrains公司的技术专家Hadi Hariri则认为大部分Silverlight可完成的功能都可以用HTML5实现:
Becker博文中大部分提到的内容有点言过其实。我对视频技术不太熟悉,所以我对于流媒体技术不予置评,但是我在构建商业应用程序和终端客户应用程序等方面有较丰富的经验,我们使用jQuery和其他库也可以实现这些功能。微软技术的简洁性和易用性,如:C#,并没有实现当初的承诺,因为程序员大部分的时间用在学习正确的模式与实践以及XAML语言上。比起CSS、HTML和jQuery等技术,究竟这些技术让我们省心了多少?
Hariri认为微软错误的把Web当做桌面看待:
微软进入WebForms的时候就犯了同样的错误。他们忽视了最重要的问题:Web != Desktop。他们利用已有的技术把我们带到ViewState和Postback的噩梦中去。
在所有的方法中我们经常忽略的是Web开发层出不穷,不仅在于我们使用的工具,同时还在于台式电脑和仪器设备和用户是一对一的,而Web则不是。
Becker声明中的一点引起了其他博友的注意:
Silverlight可让应用程序实现用户所需的丰富体验。我们把这些需求归结为三大范畴:优质的媒体体验、消费型应用程序和游戏以及商业型应用程序。
集架构师、作家和微软MVP于一身的Simone Chiaretta发现了一系列出色的Silverlight应用程序中存在的一个问题,即Silverlight并非定位于Web应用程序:
即使在微软的官方说明中,他们并非用Silverlight创建Web应用程序,而是用于解决HTML/CSS/JS中遇到的具体问题。
他还对Becker就Silverlight有而HTML不具备的功能持有不同意见:
如果你深入了解他们所列出的功能,并把它们与HTML(此处HTML包括HTML、JavaScript和CSS)进行比较,就会发现除了自适应流媒体传输和其它高级视频特性以外,所有功能都可以用HTML实现:HTML5有硬件加速设备满足Web游戏的高性能需求,也有丰富的JavaScriptUI控件库,比如:jQueryUI帮助我们快速地创建丰富和具有桌面风格的Web应用程序,还有本地存储甚至本地数据库来存储浏览器中的本地信息,以及Web工作人员在高负荷的运算中维护应用程序的响应度,HTML5还会给我们带来跟多。
Chiaretta总结Silverlight适用的场合中建议微软应重新定位:
Silverlight是一项用于创建富“Web风格”的桌面应用程序技术,集成复杂的视频组件,可用相同技术为Windows Phone 7创建移动应用程序。
Silverlight究竟在哪方面更擅长?是创建Web应用程序,还是像Flash过去那样满足特定需求而已呢?
查看英文原文:Silverlight’s Role as a Web Application Technology is Debated