| |||||||||||||||||||||||||
当LAMP(Linux、Apache、MYSQL、Perl/PHP/Python)中间件的后起之秀Active Grid的CEO 和创始人Peter Yared意识到他需要一个项目管理软件来协调公司的研发业务时,他对微软的Project 2003进行了测试。
这个测试没拖多长时间。Yared在其博客上以疑虑的口吻写道:“2003???这程序是不是3年没人修改过了?”而且,其性能和功能也无法满足他的需求。于是Yared便转向了Basecamp,这是一个Web应用,同时还可为目前很流行的Web应用框架Ruby on Rails提供试验场所。结果如何呢?Yared写道:Basecamp“没治了!”
近十年来,我们已经体验到了通过Web分发软件的好处:无须安装、平台独立性、不限地点/不限时间的使用,还有与时俱进的更新等。但是其缺陷也同样明显。基于浏览器的应用与传统软件丰富的交互性、瞬时的反应,以及离线使用等显然无法相比。不过现在被称为AJAX(异步JavaScript和XML)技术的复兴已经让前两种缺陷开始消除。基于浏览器的应用由于有了DHTML(动态HTML)也具备了高度动态性能,早已能够与远程XML服务进行自动式交互。这些功能正在逐渐成为事实上的跨浏览器标准,让新一代的Web应用具有了比更多人想象中更丰富、更迅速的交互反应。虽然离线使用仍然是个问题,但网络越来越普遍的连接性已经降低了这个问题的严重程度。
把传统软件——需要人工安装和配置——与全新的软件服务模式之间的差别定义为一场决斗是很有意思的。当然,从实际来看,情形可能更为微妙。一个强有力的AJAX类型的应用,比如Google的GMail,虽然不需要传统意义上的安装过程,但它却需要在每次使用时对代码进行更新。那么,正在更新的代码会与缓存中的代码发生冲突吗?我们不清楚。同样地,与Java应用和.Net应用集合相比,动态JavaScript和XML的此类问题也不会少。
尽管还没有出现标准的本地存储模式,但各种存储机制还是有的。IE 5引进了一种有限的存储性能,称为“userData特性”;Tibco的通用接口,也是一个强大的AJAX应用,可利用缓存来储存和读取XML文件;BEA的Alchemy项目,旨在对浏览器可使用的XML数据进行格式化,尽管该项目尚未正式推出,但其设想却是合理的。
最终,各种方法——包括基于浏览器的应用、异构环境的Java小应用或Flash组件、Java Web Start和.Net ClickOnce按需技术等——都必须提供同样的性能:普遍的覆盖性、丰富的功能、安全的执行,以及对本地存储内容的安全访问。在这四个前沿上展开的这场格斗,目前还看不出谁会胜出。不过2005年AJAX的进展表明,浏览器无可比拟的覆盖性与其毋庸置疑的丰富性可能是相互关联的。
当然,我们也看到了旧有的安全问题怎样重新浮出水面,这是我们在Firefox修正版的HTTP客户机功能易受攻击而不得不暂时舍弃它的时候发现的。这里不存在什么新的东西,不存在对于Firefox或者一般说来对于浏览器方式的特殊的安全性。如果我们想把软件作为服务,并确信能够实现这一点,那我们仍必须继续面对交替使用传统的部分受信任的软件和按需下载的软件的问题。
|
7场技术对决:传统软件VS软件服务[转]
最新推荐文章于 2019-07-03 20:51:30 发布