谢谢楼上。
RIA世界里的三种信仰
从Ajax到SilverLight,从Apollo和AIR(Adobe Integrated Runtime)到Flex和Flash,从JavaFX到OpenLaszlo,RIA(丰富互联网应用程序, Rich Internet Aplications)似乎已经成为这些天每个人话题的焦点。供应商们都争取成为被关注的重点,开发人员也在试图选择一种“正确”的技术。
在所有的喧闹和混乱中,很容易迷失真相的踪迹,当他们讨论RIA的时候,所指有所不同。RIA应该如何被构建,从Chris Messina的在Mozilla之上思考和Brendan Eich认为的开放Web,到由Microsoft 和Adobe 提供的新技术,都有着各自的哲学。
Simon Morris研究了上面提到的所有技术,并提炼出一个RIA的分类,即所谓的“RIA世界里的三种不同信仰”。
浏览器主义是信仰浏览器(或者一些类似的以页面为中心、面向标记、HTTP绑定的中间件平台)是未来最终用户面对的软件;这个信仰仅仅基于这样的观测:Web目前是作为访问互联网的主导工具。
新式桌面主义的信仰是浏览器作为一个最终用户面对的应用程序平台,终将成为一条被改变的死路。新式桌面主义的目标是,努力将传统桌面应用程序的技术发展推进到它们能自由地进行本地客户端安装,像网页那样在需要时才进行部署的境界。
实用新式桌面主义还是认为浏览器作为一个最终用户面对的应用程序平台,终将成为一条被改变的死路,但他们也认识到一时还不能完全替代浏览器。
把上面的风凉话放到一旁,在RIA技术的范围中确实存在着3个重要的阵营。Simon对他喜欢的(RIA构建)哲学继续解释道:
一个可取的RIA平台,我建议,将由现在的富非互联网应用程序(Rich Non-internet Application)平台(如常规的桌面应用程序技术)变化而来,运行于网络空间,既保留了所有丰富的功能又能在用户界面上使用原先的技巧,而不是像 有些人费力去促使的那样(使用全新的技术)。
Will Hartung指出(现在的)一些应用程序把这些阵营之间的界线变模糊了:
让Simon困惑的是,Thunderbird属于什么?是浏览器主义还是新式桌面主义?Thunderbird的很多地方由Javascript写成。 重要的目标是进一步重构运行在Thunderbird(和Firefox)后端的运行时,以便让它成为一个(不被任何厂商主导的)更好的客户端应用程序开 发平台。
那么,RIA的未来在哪里?它们重要吗?哪个技术和架构你认为将会存活下来,并为我们在将来构建应用程序开辟道路?
文章来源:InfoQ
英文原文:The Three Religions of Rich Internet Applications
Silverlight、JavaFX、Flex/Flash技术比较
对Web开发人员,过去的一段时间绝对是难忘的。因为现在在RIA开发平台领域,除了Adobe业已推出许久的Apollo和Flex,微软正 式推出了Silverlight产品,帮助开发人员创建丰富的可交互Web应用。在刚结束的JavaOne大会上,Sun公司首席技术官Bob Brewin又宣布推出基于Java平台的JavaFX,目标同样是直指RIA开发。每一个平台都有自己忠实的拥泵,但是这些技术之间的区别是什么?
Techie在他最近写的一篇博客中,从定义、大小、应用平台、授权许可等方面深入比较了这几种技术的不同。
Silverlight是一个跨浏览器和跨平台的插件,能在微软的.NET上交付炫目的多媒体体验和有丰富交互功能的Web应用;
JavaFX Script可以让用户利用JRE“一次编写,处处运行”的优势,在现有知识的技术上创建跨设备的应用;
Flex产品能帮助应用程序开发者利用强大的Flash运行时创建数据驱动的RIA,而且开发者还可以用Flash和Flex构建器一起为基于Flex的应用增加富交互元素。
目前来看,这三种技术各有优势,Flex先入为主,目前已经有了一个很大的市场,但是Silverlight的先天优势是有Windows平台的支持,而JavaFX作为后起之秀,其优势是它的开源策略。
国内开发者社区JavaEye网站就Silverlight和Flash的区别也在激烈讨论。Silverlight虽然较Flash推出的时间很晚,但已经给Flash造成很大的压力:
Flash前景堪忧,就看Adobe如何应对了,RIA是个非常大的市场,个人觉得Flash在技术上优势不大,相反Silverlight的 一些特性对Flash是致命的打击,比如搜索引擎友好等。Flash最大的优势是培养了大量的开发者,微软想要拉拢这些真正的市场推动者还要花不小的力 气。
有竞争总是件好事情,RIA开发平台之间的竞争才刚刚开始。
文章来源:http://www.wujianrong.com/archiv ... avafxflexflash.html
浏览器平台上的战争,Silverlight,Flash,Flex,JavaFX
Microsoft终于将SilverLight(原名WPF/E)这个终极武器运送到了网页战场的前线上了,
首要对手当然是Flash,许多人都将SilverLight称为FlashKiller,SilverLight中许多先<br/>进的技术及设计概念,就像是利刃般,一剑一剑的往Flash要害招呼.WMV的高解析影<br/>片拨放支援,XAML的高可读性,向量化的图形引擎等等,招招都是对着Flash所为人垢病的<br/>缺点而来!!对于Flash用户来说,这些或许还不足以让其移情别恋,但足以令她们感到Flash
所占领许久的网页互动技术王座,已经开始摇动了.
若说SilverLight1.0憾动了Flash的王座,令其如坐针毡,那么SilverLight1.1可能会让<br/>王座缺个一两根脚,SilverLight1.0结合了ActiveX及JavaScript两种技术,让设计师可以使<br/>用JavaScript来反应控制项的事件,如Mouse,Keyboard等等.但这些程式码毕竟是JavaScript,
是由Browser来解译及执行的,在效能及功能上都比不上真正的程式语言,因此SilverLight1.1
与.NETFramework整合,提供了一个精巧的CLR及.NETFramework3.5的子集,这意味着几件事,
1.SilverLight1.1可以执行Managed的应用程式,也就是说设计师可以使用C#,VB等ManagedLanguage
来撰写SilverLight程式(Ruby?RubyCLR的作者已经在Microsoft了,未来或许我们会看到VisualStudio中出现Ruby....).
2.与WPF类似的UI类别库,这意味着SilverLight的程式,可以轻易的移植到WPF/.NETFramework3.0/3.5上.
3.从.NETFramework3.5移植过来的LINQFramework.
4.强大的开发工具,设计师可以使用VisualStudio2007(Orcas),ExpressionBlend2等来开发.
5.SilverLight1.1提供了Python语言,这意味着SilverLight未来可能支援更多的动态语言.
6.你以前所撰写的.NET类别,可以几乎无痛的在SilverLight程式中使用,当然!你所使用的类别必须
是SilverLightCLR所支援的.
虽然Flash在面对SilverLight的挑战下,显得有点招架不住,但是觊觎其王座的可不只Microsoft,
Sun的JavaFX也在蠢蠢欲动,或许从技术面来看,SilverLight真正的对手其实是尚未发表的JavaFX吧.
讲了这么多褒扬SilverLight及垢病Flash的话,当然也得平衡一下,SilverLight也不是没有缺点,目前
SilverLight虽然支援了多数的主流浏览器,但是跨平台这档事仍然维持Microsoft一贯的作风,仅支援
Windows及MacOS,而Flash则是已经攻占了所有主流平台,包括手机.不过我想MonoTeam会对此挑战很兴奋吧?
另外,SilverLight1.1Alpha的体积不小,有4.3MB,要浏览ManagedSilverLight的网页,就得下载这个Runtime,
这对于储存空间拮据的手机系统来说,还是稍嫌庞大些.当然,你也可以选择SilverLight1.0,这个版本的
Runtime仅有1.3MB大小,只是程式码部份就得使用JavaScript了.
SilverLight与ASP.NETAjax
不管你看过听过多少臆测WPF/E将取代ASP.NET或是ASP.NETAjax,目前看来这个情况并没有发生,SilverLight
不但不会取代ASP.NET,反而与ASP.NET有着整合的关系,认真想起来,这点也不难理解,虽然SilverLight的架构有<br/>着把WindowsUI搬上网页的能力,但是可想而知,那个Runtime体积会有多大了.因此目前的SilverLight1.1中,并未<br/>提供原本ASP.NET已有的控制项,如Grid,Button(可以用Canvas,TextBlock模拟),TextBox(可以用TextBlock模拟)等.
而且就目前的范例及架构看来,SilverLight与ASP.NET/ASP.NETAjax处的蛮好的^_^
MicrosoftUX
随着SilverLight的出世,Microsoft也推出了新一代的UI架构,那就是MicrosoftUX,UX这个名词来自于
Vista,全名是UsereXperience.在这个架构中有三大元素,用来提供更好的网页感受的ASP.NETAjax,用来提供更强大<br/>的动画,图形网页的SilverLight,及.NETFramework3.0/3.5的WPF.对于设计师来说,UX架构的实质意义并不大,仅是
Microsoft将其技术整合所画出来的导引图.
后记
会写这篇Blog的原因是,目前我正计划撰写几篇Silverlight的文章,先贴上这篇,让读者们对Silverlight有点认识.
PS:或许不需要我来写吧,网路上多的是,哈!也算是提醒我曾经有个写Silverlight文章的计划吧^_^
文章来源:黄忠成博客http://tb.blog.csdn.net/TrackBack.aspx?PostId=1609836
[
本帖最后由 langmuir 于 2007-8-1 21:32 编辑 ]