互联网
类型
可以朗读
语音朗读
248千字
字数
2016-03-01
发行日期
展开全部
主编推荐语
历时4年完成,破除学习WebKit的窘境。
内容简介
全书一共11章:第1章介绍了Android源代码阅读与编译环境的搭建;第2章介绍了浏览器的通用工作原理以及WebKit的架构设计;第3章深入解析了WTF的实现原理;第4章深入讲解了Loader与网络库;第5章详细讲解了WebKit的网页解析原理;第6章深入分析了浏览器的排版和布局原理;第7章讲解了浏览器的渲染和硬件加速;第8章从源码的角度深入剖析了Android WebKit框架;第9章从实用的角度和源码的角度讲解了WebKit 的JavaScript扩展接口;第10章讲解了WebKit的插件系统的实现原理;第11章对RemoteInspector的实现进行了深入分析。
目录
- 版权信息
- 序
- 前言
- 第1章 搭建源代码编译环境
- 1.1 Android全源码开发环境
- 1.1.1 PC配置建议
- 1.1.2 Ubuntu系统安装
- 1.1.3 Ubuntu下Android编译环境搭建
- 1.1.4 工作目录设置
- 1.1.5 源代码下载
- 1.1.6 整体编译Android源代码
- 1.1.7 单个模块按需编译
- 1.1.8 编译生成本地Android SDK
- 1.2 Android常用工具使用及相关技巧说明
- 1.2.1 启动Android模拟器
- 1.2.2 Android调试工具adb的使用方法
- 1.3 WebKit源代码目录结构
- 1.4 WebKit代码调试
- 1.5 本章小结
- 第2章 浏览器工作原理及WebKit概览
- 2.1 浏览器工作原理概述
- 2.1.1 页面
- 2.1.2 内核
- 2.1.3 外壳
- 2.2 浏览器和WebKit简史
- 2.3 WebKit架构概览
- 2.3.1 整体组成架构
- 2.3.2 核心工作流程
- 2.3.3 代码设计风格
- 2.4 本章小结
- 第3章 WTF的实现及使用
- 3.1 WTF库概述
- 3.2 智能指针
- 3.2.1 OwnPtr的实现及使用
- 3.2.2 RefPtr的实现及使用
- 3.2.3 线程安全性
- 3.3 Assert与crash dump
- 3.3.1 Assert的实现及使用
- 3.3.2 crash dump的实现及使用
- 3.4 内存管理与容器
- 3.4.1 FastAllocator的实现及使用
- 3.4.2 容器类概述
- 3.5 原子操作
- 3.6 WebKit运行时线程结构
- 3.6.1 MessageQueue实现分析
- 3.6.2 Task传递
- 3.6.3 MainThread运行原理
- 3.7 本章小结
- 第4章 Loader与网络库
- 4.1 Loader概述
- 4.2 Loader的设计与实现架构
- 4.2.1 Loader模块的设计
- 4.2.2 Loader中的类结构及作用
- 4.3 MainResourceLoader资源加载流程
- 4.3.1 主资源
- 4.3.2 主资源加载示例
- 4.4 SubResourceLoader资源加载流程
- 4.4.1 派生资源
- 4.4.2 派生资源加载示例
- 4.5 WebKit网络库chrome-net介绍
- 4.5.1 chrome-net实现结构
- 4.5.2 chrome-net与WebKit的接口
- 4.6 WebKit中的Cache
- 4.6.1 Memory Cache内存缓存
- 4.6.2 Page Cache页面缓存
- 4.6.3 Disk Cache磁盘缓存
- 4.7 本章小结
- 第5章 网页解析
- 5.1 WebKit网页解析概述
- 5.2 DOM模型简介
- 5.3 HTML解析过程
- 5.3.1 DOM树的构建
- 5.3.2 Render树的构建
- 5.3.3 RenderLayer树的构建
- 5.4 CSS样式表处理
- 5.4.1 CSS文档结构
- 5.4.2 CSS解析过程
- 5.4.3 CSS规则匹配
- 5.5 JavaScript脚本执行
- 5.6 本章小结
- 第6章 排版布局
- 6.1 CSS盒模型
- 6.2 定位与包含块
- 6.3 Render类的核心对象
- 6.4 Render树创建流程代码分析
- 6.5 Layout流程代码分析
- 6.5.1 计算大小
- 6.5.2 确定位置
- 6.5.3 简单例子
- 6.6 绘制流程分析
- 6.7 本章小结
- 第7章 渲染与硬件加速
- 7.1 Android SurfaceFlinger系统介绍
- 7.2 WebKit的三棵树
- 7.3 Android WebKit渲染过程
- 7.3.1 Android WebKit记录网页绘制命令过程分析
- 7.3.2 Android WebKit软件渲染流程分析
- 7.3.3 Android WebKit硬件渲染流程分析
- 7.4 软件渲染与硬件渲染的优缺点
- 7.5 本章小结
- 第8章 Android WebKit框架
- 8.1 Android系统中的WebKit框架介绍
- 8.1.1 Android Framework介绍
- 8.1.2 Java Native Interface简介
- 8.1.3 Android WebKit相关API简介
- 8.2 Android WebKit框架实现解析
- 8.2.1 架构简述
- 8.2.2 初始化流程
- 8.2.3 网页加载流程
- 8.2.4 绘制调用流程
- 8.3 基于Android WebKit的浏览器实现
- 8.3.1 浏览器App的基本功能
- 8.3.2 Android系统浏览器实现解析
- 8.3.3 Android系统WebKit内核定制开发
- 8.4 本章小结
- 第9章 JavaScript扩展接口
- 9.1 V8原理及接口
- 9.1.1 V8设计元素
- 9.1.2 V8运行实例分析
- 9.1.3 V8接口及使用
- 9.2 WebKit JavaScript接口
- 9.2.1 V8 binding作用及结构
- 9.2.2 WebKit接口扩展
- 9.3 HTML 5扩展实例
- 9.3.1 WebSocket概述
- 9.3.2 WebSocket实现分析
- 9.4 本章小结
- 第10章 WebKit的插件系统
- 10.1 NPAPI插件概述
- 10.1.1 浏览器插件功能作用
- 10.1.2 NPAPI插件规范
- 10.2 WebKit的插件系统
- 10.2.1 WebKit插件基础组件
- 10.2.2 插件加载流程
- 10.2.3 插件与脚本的交互
- 10.3 Android平台插件开发
- 10.3.1 新增特有接口
- 10.3.2 插件APK化及参考范例
- 10.4 本章小结
- 第11章 浏览器调试工具
- 11.1 Inspector概述
- 11.2 WebKit Inspector协议
- 11.3 Remote Inspector实现结构
- 11.3.1 协议信道
- 11.3.2 Inspector后端
- 11.3.3 Inspector前端
- 11.4 JavaScript调试
- 11.5 本章小结
展开全部
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。