我们大部分时间上网使用的都是浏览器,做WEB前端开发也是经常跟浏览器打交道。那么你是否真正了解各个浏览器的核心到底使用什么样的内核,这些内核又有何区别?这里我要讨论的主要是IE、Firefox(火狐)、chrome(谷歌浏览器)和Opera,因为这些浏览器都是目前用户使用最多的。
请不要问我,为什么不是QQ浏览器、世界之窗、360浏览器这些产品,你是否发现,当你从电脑上卸载了IE浏览器后,这些浏览器都无法运行了。原因很简单,那就是这些浏览器只是一个壳,他们使用的是IE浏览器的内核,当然360浏览器的高速模式使用的是chrome的内核。
1、IE浏览器内核Trident
是微软在Mosaic代码的基础之上修改而来的,并沿用到IE11,也被普遍称作”IE内核”。Trident实际上是一款开放的内核,其接口内核设计的相当成熟,因此才有许多采用IE内核而非IE的浏览器(壳浏览器)涌现。
缺点:一是Trident内核曾经几乎与W3C标准脱节(2005年),二是Trident内核的大量 Bug等安全性问题没有得到及时解决,然后加上一些致力于开源的开发者和一些学者们公开自己认为IE浏览器不安全的观点,也有很多用户转向了其他浏览器。
IE从版本11开始,初步支持WebGL技术。IE8的JavaScript引擎是Jscript,IE9开始用Chakra,这两个版本区别很大,Chakra无论是速度和标准化方面都很出色。
2、Firefox(火狐)浏览器内核Gecko
Gecko是Netscape6开始采用的内核,后来的Mozilla FireFox(火狐浏览器) 也采用了该内核,Gecko的特点是代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。因为这是个开源内核,因此受到许多人的青睐,Gecko内核的浏览器也很多,这也是Gecko内核虽然年轻但市场占有率能够迅速提高的重要原因。
Gecko也是一个跨平台内核,可以在Windows、 BSD、Linux和Mac OS X中使用。JavaScript引擎是SpiderMonkey。
3、chrome浏览器内核Webkit
Webkit(Safari内核,Chrome内核原型,开源)它是苹果公司自己的内核,也是苹果的Safari浏览器使用的内核。 Webkit引擎包含WebCore排版引擎及JavaScriptCore解析引擎,均是从KDE的KHTML及KJS引擎衍生而来,它们都是自由软件,在GPL条约下授权,同时支持BSD系统的开发。所以Webkit也是自由软件,同时开放源代码。在安全方面不受IE、Firefox的制约,所以Safari浏览器在国内还是很安全的。
请记住,遨游浏览器也是使用Webkit,如今智能手机泛滥的年代,Webkit内核的浏览器都进入了手机,因此智能手机(安卓、iPhone、 Nokia’s Series 60 browser)上的浏览器都基于此内核!
4、Opera浏览器内核Presto
Presto内核早已废弃, Opera12.17及更早版本曾经采用的内核,现已停止开发并废弃,如今Opera浏览器采用的是Google Chrome的Blink内核。
怎么样,你是否已经看出来了,开源的东西发展的才会更好,而微软的IE为什么市场占有率越来越少,其实就是因为微软早些年的垄断以及微软不跟着人民群众走,使之其他产品快速占领了市场。