上午跟516就这个问题聊了一会,觉得有点用,就整理记录一下吧。
我觉得Rich Client的目标是要在Thin Client和Fat Client之间找到一个中间点。今年的《程序员》第2期有一个RIA(这里用的是广义的RIA概念,包括几乎所有RC技术)的专题讨论得已经比较全面了。
现在主要的RC技术有几个派别:
- Microsoft的基于.net技术的所谓Smart Client,秉承MS一贯的概念混乱的传统,Avalon/XAML大概也可以网罗在其中。
- Macromedia基于Flash的RIA,主要是如Laszlo 及 Macromedia Flex这样的实现。
- Mozilla的基于Gecko浏览器核心的XUL,目前好像只有FireFox浏览器支持FireFox本身就是用XUL写的一个在Gecko上运行的应用(多谢令狐指正)。
- Java的Applet/WebStart,Applet已经是赶不上趟,WebStart大概也差不多了。
- 最后是基于已有技术的实现,主要是用DHTML实现的,如Bindows、Isomorphics。
以上主流的RC技术(前三个)中有一些共同点:
以XML为核心,基本上就是用XML来代替Thin Client中HTML的地位,辅以少量的客户端脚本,通过SOAP/WebService与服务端交互,提供比Thin Client更多的功能,以及接近于Fat Client的更好的用户体验,并保留Thin Client易于发布等优点。
所以说它是Thin Client与Fat Client之间的一个中间点。
以目前的情况来看,最有希望的是前两项技术,基本上都可以达到上述兼备Thin Client/Fat Client优点的程度。XUL虽然比那二者要轻量得多,但功能相对来说也差得多,还是比较接近于Thin Client。Java技术则是比较接近于Fat Client,而且开发复杂性较高。至于DHTML,本质上还是完全的Think Client,功能都是靠大量的客户端脚本来模拟,在客户端占用资源过多,功能略差,而且存在浏览器兼容问题,个人不看好它。
谈到RIA时,516说他“好不容易和公司的平面设计师想出个flash/java的方案,想不到人家已经做到这个地步了”。
所以说,及时了解国外最新技术的动向是很重要的。
xul只要是基于Gecko的都可以,不只是firefox(起码thuderbird也可以,起码还是很多的,而且跨平台都已经做好了,现在基本上各个常见平台都有)。之前与人讨论firefox是否平台的问题,其实mozilla是平台,而firefox和thunderbird都是基于mozilla平台的程序。所以还是很可怕的,因为微软想的东西,被它们先实现了,还这么好……微软这次压力蛮大的
问题就在于只有Gecko核心才支持,IE之类都不行,光这点XUL就要差上一大截。而Smart Client有IE这个最广泛的浏览器支持,而Flash更是几乎所有浏览器都支持。对MS来说,还是来自RIA的压力更大一些。
关注一下。
已经不懂通用软件开发技术了..
基于我Front : flash + actionscriptBack : J2EE的考虑,综合来看Laszlo和Macromedia Flex就是我想要的.下午花了些时间比较了一下http://finex.blogdriver.com/finex/561780.htmlFlex血统优势,占了不少便宜.ps: Macromedia 的野心不容小觑.
^^
o(>_<)o