北京时间5月14日消息,国外媒体近日刊载文章,介绍了网络浏览器引擎渲染功能的发展和各大浏览器公司演进的历史。
以下是这篇文章的全文:
你用来阅读这篇文章的网络浏览器很可能是一个小小的工程奇迹。它可以被分解成许多具体的组成部分——一个URL地址栏、一整套书签、很可能还有一个内置视频播放器,诸如此类。但是,最重要的组成部分则是隐藏的,也就是所谓的“渲染引擎&;。网络浏览器用“渲染引擎&;吸收HTML(超文本标记语言,是用于描述网页文档的一种标记语言,也就是用户访问一个特定的互联网地址时所下载的不可见的代码流),将其转换为可见的网页,然后在设备的显示屏上显示出来。如果没有渲染引擎,那么其他任何东西都将变得不再有意义,因为正是渲染引擎决定了我们所能感知到的网络的形态。
在4月3日,也就是距离谷歌发布其网络浏览器Chrome——按某些标准衡量,现在这个浏览器已经成为全球最流行的桌面浏览器——快四年半之际,谷歌宣布未来版本的Chrome浏览器将从流行的渲染引擎WebKit转向一种名为“Blink&;的最新定制化引擎。WebKit为苹果Safari及大多数流行的移动浏览器提供支持,并以此闻名。就目前而言,Blink仍旧几乎可以说是WebKit的翻版(这不能说是侵权,因为WebKit的代码是开源的);但在不久的将来,谷歌的团队将会对这种渲染引擎进行改良,使其变成一种新的、轻量级的引擎,拥有速度快、效率高、稳定性强和功能丰富等特点。对谷歌来说,改用并改良Blink引擎可促进Chrome浏览器更好地在新环境下进行整合,如Android智能手机及其最新的谷歌眼镜可穿戴计算设备等。预计Blink将从今年6月份开始为Chrome浏览器提供支持。
Blink远非第一个从其他渲染引擎的“躯壳&;中脱胎而出的浏览器引擎。Mozilla的火狐浏览器目前是全球范围内人气度第三高的浏览器,其Gecko引擎的源头可以回溯至网景导航者(Netscape Navigator,也称“网景领航员&;)。网景导航者最初是在1994年底推出的,曾是世界上最流行的浏览器。
在1994年夏末的一个晚上,身为网景创始工程师之一的Lou Montulli非正式地与同事谈起Lynx(这是他在几年以前开发的仅支持文本的浏览器)与即将问世的网景导航者浏览器的复杂网络界面之间的巨大差距。他当时指出,Lynx在文本方面唯一能做的令人感兴趣的事情就是在显示屏上闪动字符。到Montulli次日醒来时,另一名开发者就已经在网景导航者中加入了这种功能,这种功能可通过在网页的源代码中编写标签的方式触发。时至今日,Montulli被广泛认为是标签的创造者,但他固执地声称自己从来都没有倡导过创造这个标签,更不要说为其编写任何基本代码了。
从表面上看来,这种新的标签跟用来渲染粗体字或斜体字的和标签是同类的,但实际上标签从来都没有作为HTML的官方认可功能而被标准化。这种标签所创造出来的闪动文本令人感到不快——后来甚至有人担心这种闪动文本可能会触发癫痫——这也就是为何设计人员迅速而心怀敌意地对其提出批评的原因所在。在浏览器中,标签网页同样没有得到广泛的支持:微软IE浏览器从来都没有正式支持过标签。但是,被证明是一种简便的、流行的动画格式。在二十世纪九十年代中期,也就是网景处于全盛期的时代里,业余编码员和出版商纷纷涌向Geocities和AngelFire等大型网络社区,这些社区构建了最原始的社交网络;与Facebook后来所创建的社交网络相比,Facebook拥有相对稳定的“无菌环境&;,而这些原始的社交网络则几乎是完全可编辑和可定制化的,人们只需通过粗糙的HTML代码就能做到这一点。由于当时保持互联网干净清爽和可阅读性的相关规则和最佳实践都还没有建立起来的缘故,开发者和出版商倾向于随意而胡乱地部署标签,其结果是可怕的,无论使用哪种浏览器来浏览都是如此。
AOL在1998年收购了网景,前者试图通过这项收购交易来控制自己的浏览器,与微软IE浏览器展开竞争。在此以前,IE浏览器就已经开始与Windows操作系统进行紧密的整合,从而使微软在浏览器市场上占据了压倒性的份额,同时也给这家公司带来了一场历史性的反垄断诉讼。随着网景导航者所占市场份额的大幅下降,AOL所关注的优先任务发生了转变,并最终开放了其核心源代码,这就意味着这些源代码可被自由共享、复制和用于其他项目。
在2002年,IE在浏览器市场上所占份额达到了最高点,达到95%这一令人瞠目结舌的水平。在那时,IE浏览器的三叉戟(Trident)渲染引擎一直都在以极快的速度增长,但这种渲染引擎存在Bug,如有时候会出现假想线,某些图片不能正确显示,以及页面布局崩溃等。当时设计人员会假设这些Bug将会存在,并按照这种假设来为其网站编写代码;其他浏览器虽然运行良好,但却被置之不理。同年,一些前网景员工决定利用网景导航者的开源代码开发一种新的轻量级浏览器,这个浏览器最早被命名为Phoenix,随后更名为Firebird,最后定名为火狐(FIrefox)。火狐的出现,令一度沉寂的浏览器“战争&;重新点燃了战火。与此同时,标签的代码基原封不动的仍旧保存了下来。
几年以后,IE浏览器在网络浏览器市场上占据的垄断性控制地位不复存在。在2005年,苹果公开了为其Safari浏览器提供支持的WebKit渲染引擎的源代码,这种浏览器主要用于其iPhone智能手机和iPad平板电脑。随后,许多基于WebKit的浏览器开始浮出水面,尤其是在手机上的移动浏览器,如谷歌Android手机等,这些浏览器基本上都不支持标签。
Web 2.0时代(以照片共享网站Flickr和YouTube为等网站为特征)以及在线应用(这种应用的运行与电脑本地应用类似,不过是在网络浏览器内部运行的)的崛起教会了谷歌一件事情,即该公司能以新的方式去挖掘有关用户资料的数据。在2008年底,谷歌可能觉得有必要取得控制权(就像AOL在将近十年以前收购网景那样),因此宣布该公司将推出自己的网络浏览器,为其提供一个可靠的平台,使其能在这个平台上运行自己的网络应用,而不用去管苹果、Mozilla和微软可能决定对其各自的浏览器做些什么。当时谷歌宣布推出的浏览器就是Chrome,以WebKit为基础。
谷歌最近宣布Chrome将转向使用Blink渲染引擎之举意味着,该公司切断了在2008年发布这种浏览器时承诺将向网络开发者伸出的“橄榄枝&;。现在,网络开发者需要用另一种渲染引擎来对自己的网站进行测试。不过,有一种观点认为,这种转变是有利的:WebKit现在已经被广泛使用,尤其是在移动设备上被广泛使用,就跟IE6在十年以前占据市场主导地位,从而导致网络无论从外观上还是从感觉上都几乎失去了真正的创新动力。“从基本上来说,拥有多种渲染引擎——就像市场上存在多种浏览器那样——将会促进创新,确保开放式网络的长期健康性。&;谷歌的产品经理亚历克斯·科莫罗斯克(Alex Komoroske)说道。
科莫罗斯克对Blink这一名称作出解释称,这个名字能“唤起速度和简约的感觉,符合我们建立快速简约架构的目标。另外,我们的传统是采用带有反讽意味的名称。我们当然知道,互联网的早期时代曾有过 标签;但正如Chrome是为了最小化浏览器的外框(chrome) ,而Chromebook Pixel则是为了让人们根本看不到像素(pixel)那样,Blink也永远都不会支持标签&;。
Opera浏览器的开发商最近宣布,该公司也有意将其旗舰桌面浏览器的渲染引擎从WebKit改为Blink。这是个非常重大的消息,因为Opera目前使用一种非常特别的WebBit变种,其配置允许支持标签。
由于标签不会在Blink中“闪动&;的缘故,火狐将成为唯一存留的仍旧允许文本使用标签的浏览器。在混乱的互联网技术世界里,这是一个明显的信号,表明人们有理由认为现在已经到了标签该要“退休&;的时候。
在谷歌宣布推出Chrome和Blink相关计划的几个小时以后,Mozilla日本的国际化团队经理Masayuki Nakano在该公司的内部Bug系统中提出建议称,火狐也应该这样做。在进行了几轮讨论以后,Nakano工作了一整天,对火狐浏览器的代码进行了必要的修改,并在4月14日提交了自己修改后的版本。从第23个版本的火狐浏览器开始,Mozilla的内部渲染引擎Gecko将不再支持标签。
火狐特意取消支持标签之举标志着今天的浏览器将与历史划清界限,意味着曾在最早的时候一度流行的网络动画将就此终结,被今天的流传输视频和富有幽默感的GIF图片所取代。对于那些喜欢怀旧的互联网用户来说,这种变化所带来的可能会是苦乐参半的感觉,但基本上来说还是趋于好的方向:标签确实够烦人的,根本就不应该继续存在下去。
虽然多年以来设计人员们都已不再使用标签,但这种标签一旦完全消失仍旧会令人感到不安。出于怀念历史的目的,互联网档案馆(Internet Archiv)的“网站时光倒流机&;(Wayback Machine)等网站存储着许多网站以前的版本,有些网站能一直回溯至二十世纪九十年代中期时的版本;不过,不久以后或许就不可能再看到这些网站在那时的真正模样了。个人主页服务网站GeoCities已经在2009年关闭,但由于这个网站是早期互联网的重要组成部分,因此许多主页网站的内容仍可通过P2P文件共享网络上一个640GB的档案文件获取。
公平的说,标签的文化价值有待商榷。JavaScript编程语言的创造者、现任Mozilla首席技术官的布兰登·艾奇(Brendan Eich)对这种标签的评价就不是很高:“它是一种‘有吸引力的讨厌东西’,是一个时代的警世故事。在那个时代里,浏览器市场份额处于不平衡的状态;如果没有一种标准的程序,那么轻率的创新可能会成为实际上的要求。&;
暂时而言,稍早版本的火狐和Opera浏览器可能仍将渲染所有那些档案网站;但是,古老的浏览器只能基于古老的操作系统运行,古老的操作系统只能安装在古老的计算机上,而古老的计算机最终将会被淘汰。一旦规模经济的退化令厂商继续生产特定的芯片或组件变得不再具有经济上的可行性,那么构成互联网历史的那些信息就将永远离我们而去。
不管如何,即使谷歌最近的浏览器开发和更加广泛的战略决定所带来的“涓滴效应&;很可能将在不久以后让我们丧失怀旧的能力,导致我们无法再凭吊互联网早期历史上的一个关键阶段,但网景的标签毕竟也存在了快二十年。当然,如果你纵览我们这个社会所创造的所有文化和技术,那么二十年时间也只不过是眨眼之间就飞逝而过罢了。