浏览器的相关历史和内核的区别.docVIP

  • 0
  • 0
  • 约4.23千字
  • 约 3页
  • 2017-08-14 发布于河南
  • 举报
浏览器的相关历史和内核的区别 国内大多数人使用的浏览器是以下三种:Internet Explorer · 傲游 · 腾讯TT 或许还有一些人用过:世界之窗浏览器 · Avant · GreenBrowser 这些“果丹皮”浏览器和IE,Firefox等等有什么本质区别呢? 我们先粗浅的看一下浏览器的内部:一个完整的浏览器,需要完成的任务包括: 1,与服务器进行HTTP或HTTPS交互; 2,解释HTML语言,静态文本元素,后来扩展为对HTML的娘亲-XML的解释; 3,解释GIF,JPG,PNG等格式的图形图像并将其表现在网页中; 4,解释Javascript脚本语言,扩展应用为后来的DHTML,AJAX等; 5,解释CSS层叠样式表; 6,增删改查Cookie文件; 7,软件本身的控制机制,比如收藏夹,历史,打印,热键,等等等等; 8,对各种控件兼容,包括AciiveX,视频元素,Flash,JAVA Applet等; 9,提供相应的安全验证机制,比如SSL,电子证书,数字指纹等应用。 10,以及其他。 — 作为本人不那么自信的表现,我加上了这一条 :) 浏览器的发展历史,基本上也是这个顺序的,从第一项开始,慢慢发展而来。最早的浏览器甚至不能显示图像,很有意思,一度被作为索引电话簿的首选工具。作为浏览器来说,解析HTML是最基本的能力。浏览器多年的发展积累过程中,开发者慢慢将浏览器中解析HTML的部分分离出来,成为一个相对独立的模块单元来实现对User Interface的渲染。事实上,第一个做这件事的,竟然是微软。 1997年10月,Internet Explorer第四版的发布的同时,一款名为Trident(又称为MSHTML)的“Rendering Engine”发布了。这套“Rendering Engine”不仅供给IE作为解释HTML使用,还被用在许多Windows的应用程序上。比如,我们熟悉的Windows系统中的帮助文件,内部文档的解释工作就由内嵌在系统中的Trident引擎来完成,还有Office套件的部分功能,等等。 Trident,也就是MSHTML,作为Windows系统API的一部分,我们在开发Windows应用程序时,都可以调用出来做相关解析工作。但当时“Rendering Engine”这个概念并没有引起广泛注意。后来,Mozilla也将其排版引擎Gecko作为一个独立于浏览器的模块发布了。虽然是和微软一样的动作,作为开源软件,其影响力可就不一样了。因为除了Mozilla的浏览器,其它浏览器或开源程序也都可以使用Gecko作自己排版引擎。 与微软不同的是,使用Gecko绝不再仅局限于Windows平台了! 从此“Rendering Engine”开始受到高度关注,这个词也开始慢慢被广泛使用。所谓的“Rendering Engine”中文叫做:网页排版引擎,也称为HTML渲染引擎或者浏览器的图像接口。而且,有更多时候,我们称之为“内核”。比如,我们常说,傲游是IE内核的。其实就是IE的“果丹皮”。后来大概傲游觉得自己经常被别人掀底实在是一件很不爽的事情,于是使出了很是厉害的一招:不仅可以调用IE的Trident,还可以调用Firefox的Gecko,随意切换,双内核!你不能再说我是IE的马甲了吧? 难道说我是”IE或者Firefox”的马甲?这么说太绕口了,不会有人这么说,所以也就不会再有人掀底了。高招!!(事实上,对开发者的辛勤劳动本人的敬仰有如长江洪水滔滔不绝,此处纯粹戏说加胡说,勿要当真) 下面再说说更前端的一个模块,也是目前正在突飞猛进的一个领域: JavaScript,是由Netscape开发的面向对象的脚本语言,它在浏览器中起到的作用大过美国总统(……卸任的)。Netscape引入浏览器的JavaScript语言也是完全依据ECMAScript规范的。 作为标准的脚本语言,JavaScript的引入给互联网交互创造了坚实的基础。应该说,我们今天的网页上能有各种各样的神奇的应用,真是多亏了Netscape/Mozilla!(如果也像微软一样另起炉灶,今天恐怕还止步在十年前的水平),由此受益最大的企业,应该就是Google了,Google的那些经典服务是万万离不开Javascript。从这一点看,不知能不能把Google帮Mozilla推广Firefox理解为报恩呢? 呵呵。而微软的IE,却并没有使用完全符合ECMAScript规范的JavaScript,而是将自己的另一项技术:JScript强加给了用户,起名为JScript意图大概是要与JavaScript混淆,但请记住一点:JScript是微软的注册商标! IE中使用的JScript与ECMAScript(或JavaScript)

文档评论(0)

1亿VIP精品文档

相关文档