2006年3月7日星期二

由Ajax桌面系统想到的...

对基于浏览器的桌面系统一直只是耳闻,总以为不过是Ajax的简单应用,实现内容整合、页面无刷新而已,今天接触了一下某人整理的13个极品Ajax桌面系统之后还是受到了不小的震撼。
这篇Blog列出了13个系统,分别简单介绍了各自的特点,总体来说它们共同的特点有:系统主页面就相当于一个容器,由多个独立的组件组成,各个组件可拖动、可增删、可编辑。其中Pageflakes系统的帮助信息中就简单介绍了如何开发能够插入Pageflakes系统界面的flake组件,以及系统功能实现的简单原理。在Google的个性桌面系统的组件目录中也可以看到,它能够容纳由第三方开发的模块,并允许查看其XML源码。
感觉这些系统实现的效果很像Portal/Portlet要达到的目标,比如Pageflakes提供了一个组件库(包括map组件等),能够方便地拖入页面容器内运行。不过Portal是从服务端解决问题,而这些系统使用Ajax技术从客户端入手,更能充分利用客户端技术的灵活性提供更舒适的用户体验。比如在服务端可以实现组件的插入,但要实现组件在容器里的拖动还是离不开JavaScript等客户端技术元素。
个人认为客户端的事就应当使用客户端的技术来完成。服务端专心做服务实体,客户端专心做集成界面。现在不能再简单对待Web客户端开发了,应当用工程的眼光来对待,其实它也是可以建成完整体系架构的,看一下JackBe的产品组成:

没有评论: