WebKit 技術內幕 WebKit技术内幕

朱永盛

  • 出版商: 電子工業
  • 出版日期: 2014-06-01
  • 定價: $474
  • 售價: 8.5$403
  • 語言: 簡體中文
  • 頁數: 441
  • 裝訂: 平裝
  • ISBN: 7121229641
  • ISBN-13: 9787121229640

無法訂購

買這商品的人也買了...

相關主題

商品描述

<內容簡介>

《WebKit技術內幕》由朱永盛著,從炙手可熱的HTML5的基礎知識入手,重點闡述目前應用最廣的渲染引擎項目——WebKit。不僅著眼於系統描述WebKit內部渲染HTML網頁的原理,並基於Chromium的實現,闡明渲染引擎如何高效地利用硬件和最新技術,而且試圖通過對原理的剖析,向讀者傳授實現高性能Web前端開發所需的寶貴經驗。
    全書首先從總體上描述Webkit架構和組成,而後涵蓋Web前端和所有與之相關的技術,包括網絡、資源加載、HTML和CSS解析、渲染樹、佈局、硬件加速、JavaScript引擎、多媒體、移動支持、插件機制、安全機制、調試和最新的Web平臺等。對於每一項技術,在介紹基本含義之上,詳細分析Webkit內部的工作原理,進而從實踐角度道出由此帶來的Web前端開發啟示。

<目錄>

第1章 瀏覽器和瀏覽器內核
  1.1  瀏覽器
    1.1.1  瀏覽器簡介
    1.1.2  瀏覽器特性
    1.1.3  HTML
    1.1.4 用戶代理和瀏覽器行為
    1.1.5  實踐:瀏覽器用戶代理
  1.2  瀏覽器內核及特性
    1.2.1  內核和主流內核
    1.2.2  內核特徵
  1.3  WebKit內核
    1.3.1  WebKit介紹
    1.3.2  WebKit和WebKit2
    1.3.3  Chromium內核:Blink
  1.4  本書結構
第2章 HTML網頁和結構
  2.1  網頁構成
    2.1.1  基本元素和樹狀結構
    2.1.2  HTML5新特性
  2.2  網頁結構
    2.2.1  框結構
    2.2.2  層次結構
    2.2.3  實踐:理解網頁結構
  2.3  WebKit的網頁渲染過程
    2.3.1  加載和渲染
    2.3.2  WebKit的渲染過程
    2.3.3  實踐:從網頁到可視化結果
第3章 WebKit架構和模塊
  3.1  WebKit架構及模塊
    3.1.1  獲取WebKit
    3.1.2  WebKit架構
    3.1.3  WebKit源代碼結構
  3.2  基於Blink的Chromium瀏覽器結構
    3.2.1  Chromium瀏覽器的架構及模塊
    3.2.2  實踐:從Chromium代碼結構和運行狀態理解現代瀏覽器
  3.3  WebKit2
    3.3.1  WebKit2架構及模塊
    3.3.2  WebKit和WebKit2嵌入式接口
    3.3.3  比較WebKit2和Chromium的多進程模型以及接口
第4章 資源加載和網絡棧
  4.1  WebKit資源加載機制
    4.1.1  資源
    4.1.2  資源緩存
    4.1.3  資源加載器
    4.1.4  過程
    4.1.5  資源的生命周期
    4.1.6  實踐:資源的緩存
  4.2  Chromium多進程資源加載
    4.2.1  多進程
    4.2.2  工作方式和資源共享
  4.3  網絡棧
    4.3.1  WebKit的網絡設施
    4.3.2  Chromium網絡棧
    4.3.3  磁盤本地緩存
    4.3.4  Cookie機制
    4.3.5  安全機制
    4.3.6  高性能網絡棧
    4.3.7  實踐:Chromium網絡工具和信息
  4.4  實踐:高效的資源使用策略
    4.4.1  DNS和TCP連接
    4.4.2  資源的數量
    4.4.3  資源的數據量
第5章 HTML解釋器和DOM模型
  5.1  DOM模型
    5.1.1  DOM標準
    5.1.2  DOM樹
  5.2  HTML解釋器
    5.2.1  解釋過程
    5.2.2  詞法分析
    5.2.3  XSSAuditor驗證詞語
    5.2.4  詞語到節點
    5.2.5  節點到DOM樹
    5.2.6  網頁基礎設施
    5.2.7  線程化的解釋器
    5.2.8  JavaScript的執行
    5.2.9  實踐:理解DOM樹
  5.3  DOM的事件機制
    5.3.1  事件的工作過程
    5.3.2  WebKit的事件處理機制
    5.3.3  實踐:事件的傳遞機制
  5.4  影子(Shadow)DOM
    5.4.1  什麼是影子DOM
    5.4.2  WebKit的支持
    5.4.3  實踐:使用影子DOM
第6章 CSS解釋器和樣式佈局
  6.1  CSS基本功能
    6.1.1  簡介
    6.1.2  樣式規則
    6.1.3  選擇器
    6.1.4  框模型
    6.1.5  包含塊(Containing Block)模型
    6.1.6  CSS樣式屬性
    6.1.7  CSSOM(CSS Object Model)
    6.1.8  實踐:理解CSSOM和選擇器
  6.2  CSS解釋器和規則匹配
    6.2.1  樣式的WebKit表示類
    6.2.2  解釋過程
    6.2.3  樣式規則匹配
    6.2.4  實踐:樣式匹配
    6.2.5  JavaScript設置樣式
  6.3  WebKit佈局
    6.3.1  基礎
    6.3.2  佈局計算
    6.3.3  佈局測試
第7章 渲染基礎
  7.1  RenderObject樹
    7.1.1  RenderObject基礎類
    7.1.2  RenderObject樹
  7.2  網頁層次和RenderLayer樹
    7.2.1  層次和RenderLayer對象
    7.2.2  構建RenderLayer樹
  7.3  渲染方式
    7.3.1  繪圖上下文(GraphicsContext)
    7.3.2  渲染方式
  7.4  WebKit軟件渲染技術
    7.4.1  軟件渲染過程
    7.4.2  Chromium的多進程軟件渲染技術
    7.4.3  實踐:軟件渲染過程
第8章 硬件加速機制
  8.1  硬件加速基礎
    8.1.1  概念
    8.1.2  WebKit硬件加速設施
    8.1.3  硬件渲染過程
    8.1.4  3D圖形上下文
  8.2  Chromium的硬件加速機制
    8.2.1  GraphicsLayer的支持
    8.2.2  框架
    8.2.3  命令緩衝區
    8.2.4  Chromium合成器(Chromium Compositor)
    8.2.5  實踐:減少重繪
  8.3  其他硬件加速模塊
    8.3.1  2D圖形的硬件加速機制
    8.3.2  WebGL
    8.3.3  CSS 3D變形
    8.3.4  其他
    8.3.5  實踐:Chromium的支持
第9章 JavaScript引擎
  9.1  概述
    9.1.1  JavaScript語言
    9.1.2  JavaScript引擎
    9.1.3  JavaScript引擎和渲染引擎
  9.2  V8引擎
    9.2.1  基礎
    9.2.2  工作原理
    9.2.3  綁定和擴展
  9.3  JavaScriptCore引擎
    9.3.1  原理
    9.3.2  架構和模塊
    9.3.4  內存管理
    9.3.5  綁定
    9.3.6  比較JavaScriptCore和V8
  9.4  實踐——高效的JavaScript代碼
    9.4.1  編程方式
    9.4.2  例子
    9.4.3  未來
第10章 插件和JavaScript擴展
  10.1  NPAPI插件
    10.1.1  NPAPI簡介
    10.1.2  WebKit和Chromium的實現
  10.2  Chromium PPAPI插件
    10.2.1  原理
    10.2.2  結構和接口
    10.2.3  工作過程
    10.2.4  Native Client
  10.3  JavaScript引擎的擴展機制
    10.3.1  混合編程
    10.3.2  JavaScript擴展機制
  10.4  Chromium擴展機制
    10.4.1  原理
    10.4.2  基本設施
    10.4.3  消息傳遞機制
第11章 多媒體
  11.1  HTML5的多媒體支持
  11.2  視頻
    11.2.1  HTML5視頻
    11.2.2  WebKit基礎設施
    11.2.3  Chromium視頻機制
    11.2.4  字幕
    11.2.5  視頻擴展
  11.3  音頻
    11.3.1  音頻元素
    11.3.2  Web Audio
    11.3.3  MIDI和Web MIDI
    11.3.4  Web Speech
  11.4  WebRTC
    11.4.1  歷史
    11.4.2  原理和規範
    11.4.3  實踐——一個WebRTC例子
    11.4.4  WebKit和Chromium的實現
第12章 安全機制
  12.1  網頁安全模型
    12.1.1  安全模型基礎
    12.1.2  WebKit的實現
  12.2  沙箱模型
    12.2.1  原理
    12.2.2  實現機制
第13章 移動WebKit
  13.1  觸控和手勢事件
    13.1.1  HTML5規範
    13.1.2  工作原理
    13.1.3  啟示和實踐
  13.2  移動化用戶界面
  13.3  其他機制
    13.3.1  新渲染機制
    13.3.2  其他機制
第14章 調試機制
  14.1  Web Inspector
    14.1.1  基本原理
    14.1.2  協議
    14.1.3  WebKit內部機制
    14.1.4  Chromium開發者工具
    14.1.5  遠程調試
    14.1.6  Chromium Tracing機制
  14.2  實踐——基礎和性能調試
    14.2.1  基礎調試
    14.2.2  性能調試
第15章 Web前端的未來
  15.1  趨勢
  15.2  嵌入式應用模式
    15.2.1  嵌入式模式
    15.2.2  CEF
    15.2.3  Android WebView
  15.3  Web應用和Web運行環境
    15.3.1  Web應用
    15.3.2  Web運行環境
  15.4  Cordova項目
  15.5  Crosswalk項目
  15.6  Chromium OS和Chrome的Web應用
    15.6.1  基本原理
    15.6.2  其他Web操作系統
參考資料