翻译:WebKit for Developers

 行业资讯     |      2021-07-14 07:47

保罗爱尔兰给我们带来了这本书的开篇,用简单的方式解释了Webkit端口之间的差异,是Webkit难得的开胃菜。为了让大家第一时间更好的品尝这道菜,特邀请了几位Webkit专业开发者担任本文的翻译顾问,在此表示衷心的感谢!

本文涉及的专业术语较多,我会尽量补充相关资料的部分链接,如有不当翻译欢迎批评指正。

对于许多开发人员来说,WebKit是一个黑盒。我们把HTML、CSS、JS和一堆资源放在里面,然后WebKit就神奇地变成了一个既美观又实用的网页,既吸引人又有用。事实上,正如我的同事伊利亚格里戈利克所说.

WebKit不是黑盒,而是白盒,是打开的白盒。

让我们花点时间整理一下:

什么是WebKit?

WebKit不是什么?

如何在基于WebKit的浏览器中使用WebKit?

为什么所有的WebKit都不一样?

虽然我们现在有很多WebKit浏览器,尤其是Opera已经转移到Webkit的消息,但是很难理解它们的异同。下面我就着重讲这方面。您将能够更好地区分浏览器之间的差异,在适当的错误跟踪系统中提交错误,并学习如何为特定的浏览器更有效地开发。标准网络浏览器组件让我们看看现代网络浏览器的几个组件:

解析(HTML、XML、CSS、JavaScript)布局文本和图像渲染图像解码GPU交互网络访问硬件加速

那么基于WebKit的浏览器都共享了什么呢?几乎只有前两项。

其他的由他们自己的WebKit端口负责。让我们回顾一下这意味着什么。WebKit端口虽然WebKit有不同的“端口”,但请允许我引用——来自Sencha的WebKit黑客兼eng总监Ariya Hidayat的话来解释:

WebKit最常见的参考实现是苹果自己在Mac OS X上运行的WebKit实现(这也是最早最原始的WebKit库)。如您所知,Mac OS X上各种接口的实现使用不同的本地库,并且大多数都集中在CoreFoundation上。例如,您可以定义带有特殊圆角的平面彩色印刷机。