因为Google发布了它的Chrome浏览器,我忽然想讨论一下有关浏览器的话题了.
而在讨论之前,我们先来看看Firefox 3(FF3).新版的FF3已经发布了数月,有了这一版的Firefox,如果你还要坚持用其他的浏览器,那么依我之愚见,你不是对技术一窍不通,一定是 个 受虐狂.不用说,其他的浏览器也有它们各自的高招,但是假如你需要一款速度快、遵从的标准多、开源(这也是个大问题)、跨平台、广泛普及而又性能良好的浏 览器,那么 Firefox就是最佳选择;有人甚至认为,这是唯一选择.不过说实话,Firefox除了专为我们这些超级网虫设计的功能之外,还有很多扩展组件也足以 让开发人员惊讶不已.
首先要提到DOM观察器.假如你真打算详细考察并了解一个设计精良的网页是如何构造的,那你绝对需要Firefox的这个组件.
DOM观察器可用来观察和编辑你正在浏览的网页上的文档对象模型(DOM).它就是HTML文档或XUL应用架构的一个面向对象的界面.
你可能很熟悉HTML,但是对XUL知之甚少.其实XUL就是XML用户界面标记语言,是Mozilla项目组开发的.XUL是个很大的话题,我不可能在这里做详尽的解说.它不是W3C标准,只适用于基于Gecko渲染引擎的浏览器.
DOM之所以重要,是因为它允许脚本和其他处理系统可以理解并处理下载网页的内容.举个很平常的例子,比如说JavaScript就能够通过找到并修改某个网页上所有定义网页背景和字符颜色的HTML元素而动态地改变该网页的色彩搭配.
再来看看另一个扩展组件Greasemonkey.它可以使用JavaScript,通过DOM来选择处理一些网页.
有了Greasemonkey,只要你乐意,就可以改变你所浏览的每个页面的标题格式,或者随意对某个网站的内容进行全新的设计,只要你的浏览器能够显示出来就行.Greasemonkey是个非常酷的概念,有时间我得好好地说道说道它.
DOM 是 W3C标准,其最低级别的实现,就是DOM Level 1,W3C从1998年开始推荐使用,现在已支持所有流行的浏览器.遗憾的是,DOM的较高级别的实现还没有做到这一点.Wikipedia上有一篇关于 DOM各级别实施与W3C所推荐的主要浏览器布局引擎规则之间的复杂但颇有些搞不清爽的对比文章.
实施上的差异就意味着需要访问DOM的跨浏览器脚本在执行时必须非常仔细,否则的话,所设计的网页就有可能像是醉汉的作品.
DOM观察器的亮点就在于它能轻松地驾驭和操控DOM的分层结构.
DOM 观察器可提供一个双窗格的窗口,你可以在不同的窗格中观看形式不同的DOM内容.DOM观察器还可保持两个窗格同步,举例来说,如果左窗格现实的是 DOM 节点(DOM元素的分层显示),那么右窗格就可以显示目前所选节点的价值或与此节点相关的JavaScript对象.
我可能有些 扯远了,我本来是 想评论Chrome的,但是却对Firefox的扩展组件说了那么多.那就容我回头,说说Chrome可以支持大多数流行的插件(Flash、 Acrobat Reader、Java、Windows Media Player、Real Player、QuickTime和Silverlight),但是它却不能支持像Firefox那样完美的扩展组件.
那就让我们看看,这款新潮的Chrome到底都有些什么?它是速度快的、beta版的、开源的Web浏览器,目前只能用于Windows(OS X和Linux版还在计划之中),是在BSD许可证下发布的,也就是说你可以在专利的商业软件中使用它的源代码.
我刚提到说Chrome速度很快.这是因为它只提供一个标签极少的界面,从而避免了显示正常的菜单条(这一点和IE不同,IE只能把菜单条隐藏起来).
Chrome还支持Google Gears.Google Gears技术可以让你保存一些Web网站的特殊形式的快捷方式,这些快捷方式对网站的内容进行了压缩封装,你既可以在线使用,也可以在离线后上网,其效果与其说是网页还不如说是应用.
Chrome 实际上是Chromium项目的结果,尽管Chrome目前只发布了Windows版,但是CodeWeavers已经发布了 CrossOver Chromium(俗称CC),可以在OS X和Linux上执行Chromium.CC使用CodeWeavers-Wine开发系统开发的.
CodeWeavers notes的一个重要不同点就在于它是CrossOver Chromium的,和Chrome不同,它不会自动更新.这听上去像是个缺陷,但是Chrome的所谓自动更新,也不过就是每隔5小时更新一次而已.
Chrome的未来版本在执行漏洞修复或者安全升级时,会先行下载补丁程序,然后会在用户再次启动Chrome时进行修复,不会用告诉用户修改了什么等方式去打扰用户.
Google这么做的合理性在于,“需要进行安全修复时,重要的是要尽可能快速地执行更新以保障用户的安全.因此,不需要用户干预对我们来说是很重要的……有些安全修复需要宁静地进行,因为我们不希望把安全漏洞暴露给攻击者们……”
当 Chrome 成熟时,看看这种自动更新策略是如何实施的,应该是很有意思的一件事.然而这里面是有问题的,因为由厂商一方单方面进行软件更新并不符合很多企业IT部门 需要在版本更新之前进行兼容性测试的策略.换句话说,这种更新方式对于很多生产现场的IT环境来说并不合适,至少目前来看是如此.
事实上,整个Chrome项目距离企业级应用市场还很遥远,但因为它是Google所开发的,而Google已经表示过,“我们真正需要的并不只是一个浏览器,而是适用于Web页面和应用的一个现代化的平台.”
Chrome或许并不会在今天或者明天对微软的IE构成威胁,但是在不远的将来,一旦Chrome成熟到了Google所说的平台阶段,那情形就可能不一样了.有Google在它后面撑腰,企业必须对其加以关注.(博恩编译)