WebKit General Orientation

来源:互联网 发布:数据库云备份 编辑:程序博客网 时间:2024/06/06 00:40

From https://lists.webkit.org/pipermail/webkit-help/2009-July/000010.html

A question was asked about general WebKit structure and overview. I'm probably not the best to answer this, but at least it is *an* answer. The rest of the gang can chime in with corrections as they see fit.

WebKit is basically made up of the following:

1. JavaScriptCore: The JS engine. This also includes the WTF librbrary, which contains various utilities. This is completely cross-platform (though there are various platform-specific JIT backends.) This can be used as a separate entity to the rest of WebKit.

2. WebCore: this is where most of the magic lives. All rendering logic, SVG support, transforms, network support, etc. Are here.

Each platform has specific logic here. Look in WebCore platform for the OS-specific and rendering (Skia, CG, Cairo) backends.

3. WebKit: the front-end layer used by applications. Each GUI platform (windows, Cocoa, Gtk+, Qt) provides a different implementation of this. Generally, the goal is to make this a client to the WebCore layer, basically just 'shimming' WebCore to the specific Os/Platform that will be using WebKit.

The remaining projects are autogenerated bindings to the DOM, etc.

That's about all I can type on my iPhone at the moment. I hope it's somewhat helpful!

-Brent