浏览器大战已经过去很长时间了,Firefox 的出现使得战争得以继续。
然而个人觉得,Firefox 其实名不符实。首先Firefox 的架构是底层有好几个运行时支持框架
XPCom,用来模拟 COM
JS: script 引擎
Render : 真正的排版与渲染引擎,包括XUL, HTML解释
XPConnect, 用来xul中衔接 javascript。
这些框架合起来构成所谓 的 gecko ,然后 mozilla的其他产品使用XUL构造出来。
这个框架导致gecko 引擎庞大而臃肿,而且其不可能高效,而且实际上也只是比IE这样的慢浏览器快一点而已。
对于gecko 引擎的庞大臃肿,我是很有体会的。当初,想将gecko 嵌入我的一个软件中,开始感觉不错,下载那个 sdk,果然庞大,文件不少。 使用C++来嵌入,接口已经不少了,但只够简单使用,更多的接口需要自己从IDL文件产生,或者到mozilla的源码目录下去拷贝。更要命的是,我想改改引擎中的某处功能,面对mozilla的源码,真不容易定位于修改了。怪不得当初apple与去年的adobe都没有选择 gecko了,代码是在太臃肿了。
webkit 的代码要简洁得多,目录组织与命名使得很快就能熟悉上手,我感觉太容易了。要知道,webkit应为缺人,
windows版其实没有完成的,我很快就可以进行深层次的改写了。
附:浏览器下载http://download1.csdn.net/down3/20070606/06151506600.rar