当前位置:2018刘伯温心水图库 > 软件复用 >

Mozilla 的 Gecko 引擎有哪些优势和问题

  当年Firefox从Mozilla项目中涅槃而出的时候,第一个要解决的问题就是Layout,而Layout是Gecko的核心组件,从那时到现在Gecko经历了超过十年的进化时间,所以,先说最大的问题就是他已经变的异常庞大,代码结构非常复杂,基本上到现在很少有人还能够清楚的知道gecko的每一个细节。

  我个人觉得Gecko的魅力存在于他的架构设计上,现在可能已经没有清楚的界限分隔,所以下面提供的内容在某个时期不一定是属于Gecko部分的,不过从现在的角度来说Gecko代表Firefox整个的内核引擎。

  XUL提供统一的界面描述语言,对于控件的制作完全使用描述性/解释性的语言就可以完成,并且由于XUL提供的超强描述能力,基本可以在任何有XUL的地方进行扩展,所以理论上Firefox的Addon可以插到系统的任何地方,这个跟Chrome的扩展API是有本质区别的,XUL在这些年也发展的越来越庞大,最后核心部分提取为XULRunner,Firefox/Thunderbird或者任何基于Mozilla/Gecko技术的应用都可以理解为是运行在XULRunner这个虚拟机上的。而Mozilla也希望有开发人员基于XULRunner直接开发桌面应用。

  XPCOM是Gecko中又一个利器,本身概念等同于甚至超越同期的COM/DCOM等组件技术的,浏览器中大量的基础组件都是通过XPCOM的方式提供的,从文件系统到网络访问,从书签访问到外观控制,没有统计过Gecko中提供的XPCOM一共有多少,估计数量一定很多,而XPCOM也是提供Gecko扩展能力的超强武器,是软件复用的有力封装工具,扩展本身接入到平台上之后提供的XPCOM服务可以被其他扩展使用,大大提供软件复用能力。

  XPConnect提供了多语言的接入能力,你可以使用XUL/JavaScript,可以使用C/C++、Java、Python来实现XPCOM、Module等,将这些语言制作的二进制扩展接入到平台中,当然他是从属于XPCOM的。

http://kingkaiju.com/ruanjianfuyong/680.html
点击次数:??更新时间2019-07-24??【打印此页】??【关闭
  • Copyright © 2002-2017 DEDECMS. 织梦科技 版权所有  
  • 点击这里给我发消息
在线交流 
客服咨询
【我们的专业】
【效果的保证】
【百度百科】
【因为有我】
【所以精彩】