未来的 Web 应用是什么样子,虽然还不清晰,但浏览器厂商们认为,未来 Web 应用的基石是一种叫做 Indexed DB 的本地存储技术,这个由 Oracle 发起,最初叫 WebSimpleDB 的本地存储技术,目前只是一个原型,但已经获得微软,Mozilla,Google 等重要厂商的认可。他们还寻求将 Indexed DB 提交 W3C 成为标准。
微软的背书 Indexed DB 发展有微软的功劳。多年来,微软一直和各种有关 HTML 的讨论保持距离,现在,他们开始积极参与其中,比如,微软架构师 Pablo Castro 在对 Indexed DB 的反馈意见中,不仅对 Indexed DB 表示赞赏,而且表示,微软正在招聘人员从事 Indexed DB 相关的工作。另外,微软在其 IE 博客中,公开对 Indexed DB 进行背书,微软说,“和 Mozilla 一起,我们对本地存储技术 Indexed DB 感到振奋,我们认为这是 Web 的一个重要方案”。 这听上去有些倒退,然而,在浏览器本地存储数据对 Web 应用来说非常重要,虽然云计算的本质是将一切应用运行到网络上,然而,我们的网络并不是无处不在,也没有足够快。本地存储让开发者将一些数据保存在本地计算机以便快速处理,这意味着,Gmail, Google Docs 一类的应用可以离线使用,也让数据可以缓存在本地以便将来使用,这使得云计算更快更可靠。 Web SQL 的兴衰 另一个本地存储方案,来自 Apple,称为 Web SQL ,有时称 Web DB,它使用 SQL 查询语言查询数据。Safari 支持 Web SQL,还有 Chrome 4, Opera 也在寻求对该技术的支持。然而,Web SQL 遇到了问题,因为每家数据库厂商都有自己的 SQL,Web SQL 使用的 SQLite 并非标准。Google 认为,目前的 SQL 语法各式各样,尚待统一。Apple 程序员 Maciej Stachowiak 指出,这样下去,必将产生多个 Web SQL 版本。 Indexed DB 在浏览器层面使用底层的接口,微软和 Mozilla 认可这一策略,开发者可以自己实现基于这些底层技术的接口,就像人们使用 JavaScript 实现了各种各样的框架,如 jQuery, Dojo, 及 YUI 。现在的 Web ,开发者们并不经常使用浏览器自己的 API,相反,他们更愿意使用 jQuery,Dojo 一类跨浏览器框架,与其推出一些复杂的,不兼容的 API,还不如推出简单的底层的东西,让开发者们自己实现各种应用。 |