页面的绘制(绘制,就是把一个HTML文件变成一个活灵活现的页面展示的过程...),只有一半轮子是Chrome自己做的,还有一部分来自于WebKit,这个Apple打造的Web渲染器。。。
之所以说是一半轮子来源于WebKit,是因为WebKit本身包含两部分主要内容,一部分是做Html渲染的,另一部分是做JavaScript解析的。在Chrome中,只有Html的渲染采用了WebKit的代码,而在JavaScript上,重新搭建了一个NB哄哄的V8引擎。目标是,用WebKit + V8的强强联手,打造一款上网冲浪的法拉利,从效果来看,还着实做的不错。。。

不过,虽说Chrome和WebKit都是开源的,并联手工作。但是,Chrome还是刻意的和WebKit保持了距离,为其始乱终弃埋下了伏笔。Chrome在WebKit上封装了一层,称为WebKit Glue。Glue层中,大部分类型的结构和接口都和WebKit类似,Chrome中依托WebKit的组件,都只是调用WebKit Glue层的接口,而不是直接调用WebKit中的类型。按照Chrome自己文档中的话来说,就是,虽然我们再用WebKit实现页面的渲染,但通过这个设计(加一个间接层...)已经从某种程度大大降低了与WebKit的耦合,使得可以很容易将WebKit换成某个未来可能出现的更好的渲染引擎。。。

转载于:https://www.cnblogs.com/kdcaptain/archive/2012/05/23/2514223.html

WebKit 与 V8 的关系相关推荐

  1. QT webkit 各个类之间关系--QWebView-QWebPag

    一.QT webkit简介 1.Qt Qt(发音同 cute)是一个跨平台的C++应用程式开发框架,有时又被称为C++部件工具箱.Qt被用在KDE桌面环境.Opera.Google Earth.Sky ...

  2. 干货:浏览器渲染引擎Webkit和V8引擎工作原理

    浏览器的历史 W3C在80年代后期90年代初期发明了世界上第一个浏览器WorldWideWeb(后更名为Nexus),支持文本/简单的样式表/电影/声音和图片 1993年,网景(netscape)浏览 ...

  3. WebKit之V8技术优化分析

    一.V8背后的故事 1.1 javascript的速度与需求 JavaScript存在至少10年了.在1995年,它出现在网景(Netscape Communications)公司所研发的网页浏览器N ...

  4. 浅谈WebKit之WebCore

    最近自从Google推出Chrome浏览器之后,浏览器受到人们更加广泛的关注,网上时而会出现这样那样的评价,作为一个浏览器内核爱好者,希望能乘着大家都关注的东风,能对浏览器内核有更深入的理解,进而能更 ...

  5. 理解WebKit和Chromium: Canvas2D及其实现

    转载请注明原文地址:http://blog.csdn.net/milado_nju/article/details/7293012 # Canvas 2D及其在WebKit和Chromium中的实现 ...

  6. C#调用WebKit内核

    原文:C#调用WebKit内核 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013564470/article/details/80255954 ...

  7. Node.js 内存管理和 V8 垃圾回收机制

    作者:五月君 链接:https://www.imooc.com/article/288799 来源:首发慕课网 本文已获作者 "五月君" 授权转载,原文首发于 "慕课网& ...

  8. 校招社招必备核心前端面试问题与详细解答

    本文总结了前端老司机经常问题的一些问题并结合个人总结给出了比较详尽的答案.网易阿里腾讯校招社招必备知识点. 原理讲解参考:前端增长-重新定义大前端 在线课程:网易云课堂课程      思否课堂 官方博 ...

  9. 开发一款浏览器内核需要学习哪些方面的知识?

    开发一款浏览器内核需要学习哪些方面的知识? 最近参加毕业设计,题目选的是<基于Linux平台的网页浏览器设计与实现>. 想认真做一下,所以不准备直接用现成的开源浏览器内核(比如WebKit ...

最新文章

  1. 使用Notepad++比较文件的差异
  2. Android项目中的assets和raw文件夹
  3. python杂记-RSA加解密实现(2)
  4. 工作262:HBuilderX常见快捷键
  5. BZOJ 2324: [ZJOI2011]营救皮卡丘(带上下限的最小费用最大流)
  6. Tensorflow模型加载与保存、Tensorboard简单使用
  7. Django后端编辑图片提取主要颜色API
  8. 平行四边形的特殊性质
  9. 使用Python验证6174猜想
  10. python数据结构剑指offer-二维数组中的查找
  11. Android Unable to execute dex: java.nio.BufferOverflowException
  12. Unity常用工具类
  13. java jsonobject_Java调用groovy及如何使用springBean
  14. 找不到MSVCR120.dll,无法执行代码 ——问题解决方案
  15. 游戏修改器制作教程七:注入DLL的各种姿势
  16. 135微信编辑html语言,135微信编辑器怎么在拉入的模板框框里添加文字
  17. MathType公式编辑器数学公式、希腊字母和常用操作快捷键[待续ing]
  18. ZZULIOJ 1919 D
  19. HyperAI超神经已加入群聊,思否 AIGC Hackathon 扩列
  20. 自定义桌面开始按钮(winxp、7、8、8.1、10)

热门文章

  1. Oracle Golden Gate 系列十一 -- 配置 GG DDL 同步 说明 与 示例
  2. linux中find查找命令的mtime参数使用方法说明
  3. 怎么让用一行代码实现页面的定时强制刷新?脚本刷流量再也不用愁了!
  4. .Net多线程文章收集
  5. java学习笔记30(IO :缓冲流)
  6. SVN中忘记上传自己写的工程,但是IP已经变了的解决方案
  7. ES6之路第九篇:Set和Map数据结构
  8. mysql数据库指定ip远程访问
  9. 【LeetCode】69. Sqrt(x) (2 solutions)
  10. 【小菜日志】用C#完成Allen Lee's Magic大虾推荐的F#作业F#学习中