WebKit引擎介紹

WebKit引擎介紹

ID:40574731

大小:495.00 KB

頁數(shù):28頁

時(shí)間:2019-08-04

WebKit引擎介紹_第1頁
WebKit引擎介紹_第2頁
WebKit引擎介紹_第3頁
WebKit引擎介紹_第4頁
WebKit引擎介紹_第5頁
資源描述:

《WebKit引擎介紹》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、WebKit引擎入門介紹1WebKit簡介31.1簡介31.2WebKit主要特點(diǎn)31.2.1引擎31.2.2開源31.2.3高性能41.2.4可移植性41.2.5兼容性41.2.6遵守標(biāo)準(zhǔn)41.2.7安全41.3WebKit主要組成41.3.1體系結(jié)構(gòu)52WebCore介紹52.1WebCore目錄結(jié)構(gòu)52.2Http請求在WebCore中的主要流程62.2.1工作流程62.2.2處理流程83WebKit的DOM分析103.1DOM原理103.1.1DocView模型103.2DOM解析基本算法113.2.1基本算法思

2、想114WebKit的Ports介紹154.1Port概述154.2WebKitPort移植實(shí)現(xiàn)分析164.2.1WebCore交互接口164.2.2連接模塊loader164.2.3顯示模塊WebView和WebFrame164.2.4Android中對Port移植方面的實(shí)現(xiàn)174.2.5小結(jié)175WebKit的JavascriptCore介紹185.1JavaScriptCore實(shí)現(xiàn)特點(diǎn)185.2JavaScriptCore目錄的內(nèi)容185.3JavaScriptCore與WebCore交互196WebKitForA

3、ndroid196.1WebKit模塊目錄結(jié)構(gòu)196.2Java層框架226.2.1主要類描述226.2.2數(shù)據(jù)載入器的設(shè)計(jì)236.3C層框架246.4WebView操作分析256.4.1WebKit模塊初始化256.4.2數(shù)據(jù)載入276.5刷新繪制281WebKit簡介1.1簡介WebKit的前身是KDE小組的KHTML。Apple將KHTML發(fā)揚(yáng)光大,推出了裝備KHTML改進(jìn)型的WebKit引擎的瀏覽器Safari,獲得了非常好的反響。WebKit引擎比Gecko引擎更受程序員歡迎的原因,除了其引擎的高效穩(wěn)定,兼容性

4、好外,其源碼結(jié)構(gòu)清晰,易于維護(hù),是一個(gè)重要的原因?,F(xiàn)在瀏覽器的內(nèi)核引擎,基本上是三分天下:Trident:IE以Trident作為內(nèi)核引擎。Gecko:Firefox是基于Gecko開發(fā)。WebKit:Safari,GoogleChrome基于Webkit開發(fā)。還有一個(gè)Presto:Opera,任天堂DS瀏覽器,發(fā)展也良好。WebKit內(nèi)核在手機(jī)上的應(yīng)用十分廣泛,例如Google的手機(jī)Gphone、Apple的iPhone,Nokia’sSeries60browser等所使用的Browser內(nèi)核引擎,都是基于WebKit

5、。1.2WebKit主要特點(diǎn)1.2.1引擎該項(xiàng)目的主要重點(diǎn)是內(nèi)容部署在萬維網(wǎng)上的,基于標(biāo)準(zhǔn)的技術(shù),如HTML,CSS,JavaScript和DOM中。并能夠嵌入WebKit在其他應(yīng)用程序中,并用它作為一般用途的顯示和交互引擎。1.2.2開源WebKit繼續(xù)自由使用的兩個(gè)開源協(xié)議LGPL和BSD,在Webkit中,WebCore和JavaScriptCore是LGPL,其余是BSD授權(quán)。1.2.3高性能維持和改善的速度和內(nèi)存使用是一個(gè)重要的目標(biāo)。隨著網(wǎng)頁內(nèi)容越來越豐富,越來越復(fù)雜,作為網(wǎng)絡(luò)瀏覽器上運(yùn)行的更有限的設(shè)備,需要提

6、升性能,加快瀏覽速度。1.2.4可移植性WebKit移植到各種各樣的臺式機(jī)、移動(dòng)、嵌入式平臺和其他平臺。WebKit提供必要的基礎(chǔ)設(shè)施,并酌情提供友好嵌入的API。1.2.5兼容性用戶瀏覽網(wǎng)頁,兼容現(xiàn)有的網(wǎng)站是必不可少的。WebKit致力于維護(hù)和改善兼容現(xiàn)有的網(wǎng)絡(luò)內(nèi)容,利用回歸測試,以保持WebKit的兼容性。1.2.6遵守標(biāo)準(zhǔn)WebKit的目標(biāo)是遵守有關(guān)的Web標(biāo)準(zhǔn),并支持新的標(biāo)準(zhǔn)。1.2.7安全保護(hù)用戶安全的行為是至關(guān)重要的。迅速修復(fù)安全問題,以保護(hù)用戶系統(tǒng)和維護(hù)他們對WebKit的信任。1.3WebKit主要組成W

7、ebKit主要包括三個(gè)部分WebCore、JavascriptCore及Ports部分。WebKit專注的核心部分主要是:分析Html,Javascript的解析和布局渲染技術(shù)。分別在由WebCore/html,JavascriptCore和WebCore/rendering來完成。1.3.1體系結(jié)構(gòu)WebKit的體系結(jié)構(gòu)如下圖:2WebCore介紹2.1WebCore目錄結(jié)構(gòu)根據(jù)源代碼目錄結(jié)構(gòu),WebCore目錄主要包括如下:bindings:將DomBinding給JavascriptCore方面的代碼,同時(shí)包含依據(jù)

8、idl接口描述文件,自動(dòng)生成對應(yīng)于JavascriptCore的Binding實(shí)現(xiàn)的腳本等內(nèi)容;bridge:主要包含NPPlugin方面的接口訪問等內(nèi)容;css:主要包括與css方面相關(guān)的內(nèi)容,如解析不同css規(guī)則的定義與實(shí)現(xiàn)、cssBinding給JS的接口定義等內(nèi)容;dom:主要包括dom方面相關(guān)的內(nèi)容,如不同

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。