• Web性能实战
21年品牌 40万+商家 超1.5亿件商品

Web性能实战

正版保障 假一赔十 电子发票

49.18 5.0折 99 全新

仅1件

河北廊坊
认证卖家担保交易快速发货售后保障

作者(美)杰里米·瓦格纳著

出版社人民邮电出版社

ISBN9787115538321

出版时间2020-06

装帧平装

开本16开

定价99元

货号4ED64F7FCECD4287B75

上书时间2024-12-12

瀚东书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介

 
 

  
    作者介绍 
  
 

  
    作者介绍 
  
 

杰里米·瓦格纳(Jeremy Wagner) Web性能咨询师、Web前端*发者,在多家机构和大公司积累了十余年经验。撰写过大量Web性能方面的图书和文章,还经常在各种Web开发会议上发表演讲。
 


目录

 
 

  
    目录 
   

  
    目录 
   

  

第 1 章 理解Web 性能    1

 
  

1.1 理解Web 性能 1

 
  

1.1.1 Web 性能和用户体验 1

 
  

1.1.2 Web 浏览器如何与Web 服务器通信 2

 
  

1.1.3 Web 页面如何加载 4

 
  

1.2 上手准备 5

 
  

1.2.1 安装Node.js 和Git 6

 
  

1.2.2 下载并运行客户的网站 6

 
  

1.2.3 模拟网络连接 7

 
  

1.3 检查客户网站 8

 
  

1.4 优化客户网站 10

 
  

1.4.1 缩小资源 11

 
  

1.4.2 使用服务器压缩 13

 
  

1.4.3 压缩图像 16

 
  

1.5 *终性能测试 18

 
  

1.6 小结 19

 
  

第 2 章 使用评估工具 20

 
  

2.1 使用Google PageSpeed Insights 进行评估 20

 
  

2.1.1 评估网站性能 20

 
  

2.1.2 使用Google Analytics 进行批量报告 23

 
  

2.2 使用基于浏览器的评估工具 24

 
  

2.3 检查网络请求 25

 
  

2.3.1 查看计时信息 25

 
  

2.3.2 查看HTTP 请求和响应头 27

 
  

2.4 渲染性能检查工具 29

 
  

2.4.1 理解浏览器如何渲染网页 29

 
  

2.4.2 使用Google Chrome 的Performance 面板 30

 
  

2.4.3 识别问题事件:jank 是元凶 32

 
  

2.4.4 用JavaScript 在时间线中标记点 37

 
  

2.4.5 其他浏览器中的渲染分析器 38

 
  

2.5 在Chrome 中对JavaScript 进行基准测试 39

 
  

2.6 模拟和监控设备 40

 
  

2.6.1 在桌面Web 浏览器中模拟设备 41

 
  

2.6.2 在Android 设备上远程调试网站 42

 
  

2.6.3 在iOS 设备上远程调试网站 43

 
  

2.7 创建自定义网络节流配置 44

 
  

2.8 小结 45

 
  

第3 章 优化CSS 47

 
  

3.1 直入主题,保持DRY 47

 
  

3.1.1 简写CSS 47

 
  

3.1.2 使用CSS 浅选择器 50

 
  

3.1.3 挑选浅选择器 51

 
  

3.1.4 LESS 和SASS 预编译器:简单就是美 52

 
  

3.1.5 不要重复自己 53

 
  

3.1.6 实现DRY 53

 
  

3.1.7 使用csscss 查找冗余 54

 
  

3.1.8 分割CSS 56

 
  

3.1.9 自定义框架下载 57

 
  

3.2 移动优先即用户优先 58

 
  

3.2.1 移动优先与桌面优先 58

 
  

3.2.2 Mobilegeddon 算法 61

 
  

3.2.3 使用Google 的移动友好指南 62

 
  

3.2.4 验证网站的移动友好性 63

 
  

3.3 对CSS 进行性能调整 63

 
  

3.3.1 避免使用 @import 声明 63

 
  

3.3.2 @import 串行请求 64

 
  

3.3.3 <link>并行请求 64

 
  

3.3.4 在<head>中放置CSS 65

 
  

3.3.5 防止无样式内容闪烁 65

 
  

3.3.6 提高渲染速度 66

 
  

3.3.7 使用更快的选择器 66

 
  

3.3.8 构建和运行基准测试 67

 
  

3.3.9 检查基准测试结果 68

 
  

3.3.10 尽可能使用flexbox 69

 
  

3.3.11 对比盒子模型和flexbox 样式 69

 
  

3.3.12 检查基准测试结果 70

 
  

3.4 使用CSS 过渡 71

 
  

3.4.1 使用CSS 过渡 71

 
  

3.4.2 观察CSS 过渡性能 73

 
  

3.4.3 使用will-change 属性优化过渡 74

 
  

3.5 小结 75

 
  

第4 章 理解关键CSS 76

 
  

4.1 关键CSS 及其解决的问题 76

 
  

4.1.1 理解折叠 76

 
  

4.1.2 理解渲染阻塞 77

 
  

4.2 关键CSS 的原理 78

 
  

4.2.1 加载首屏样式 79

 
  

4.2.2 加载首屏以外内容的样式 79

 
  

4.3 实现关键CSS 80

 
  

4.3.1 配置并运行菜谱网站 81

 
  

4.3.2 识别和分离首屏CSS 82

 
  

4.3.3 加载首屏以外内容的CSS 88

 
  

4.4 权衡收益 89

 
  

4.5 提升可维护性 91

 
  

4.6 多页网站的注意事项 91

 
  

4.7 小结 92

 
  

第5 章 响应式图像 94

 
  

5.1 为什么要考虑图像传输 94

 
  

5.2 理解图像类型及其应用 96

 
  

5.2.1 使用光栅图像 96

 
  

5.2.2 使用SVG 图像 99

 
  

5.2.3 选择图像格式 100

 
  

5.3 CSS 中的图像传输 101

 
  

5.3.1 使用媒体查询在CSS 中适配显示器 101

 
  

5.3.2 通过媒体查询适配高DPI 显示器 104

 
  

5.3.3 在CSS 中使用SVG 背景图像 106

 
  

5.4 在HTML 中传输图像 106

 
  

5.4.1 图像的全局max-width规则 107

 
  

5.4.2 使用srcset 107

 
  

5.4.3 使用<picture>元素 110

 
  

5.4.4 使用Picturefill 提供polyfill支持 114

 
  

5.4.5 在HTML 中使用SVG 116

 
  

5.5 小结 117

 
  

第6 章 图像的进一步处理 118

 
  

6.1 使用图像雪碧图 118

 
  

6.1.1 准备工作 119

 
  

6.1.2 生成雪碧图 119

 
  

6.1.3 使用生成的雪碧图 121

 
  

6.1.4 使用雪碧图时的考量 122

 
  

6.1.5 使用Grumpicon 回退到光栅图像雪碧图 123

 
  

6.2 缩小图像 124

 
  

6.2.1 使用imagemin 优化光栅图像 125

 
  

6.2.2 优化SVG 图像 129

 
  

6.3 使用WebP 编码图像 131

 
  

6.3.1 使用imagemin 编码有损WebP 图像 132

 
  

6.3.2 使用imagemin 编码无损WebP 图像 133

 
  

6.3.3 支持不支持WebP 的浏览器 134

 
  

6.4 懒加载图像 136

 
  

6.4.1 配置标记 137

 
  

6.4.2 编写懒加载程序 138

 
  

6.4.3 考虑不支持JavaScript 的用户 144

 
  

6.5 小结 146

 
  

第7 章 更快的字体 148

 
  

7.1 明智地使用字体 149

 
  

7.1.1 选择字体和字体变体 149

 
  

7.1.2 构建你自己的@font-face级联 151

 
  

7.2 压缩EOT 和TTF 字体格式 154

 
  

7.3 取字体子集 156

 
  

7.3.1 手动生成字体子集 156

 
  

7.3.2 使用unicode-range 属性传输字体子集 160

 
  

7.4 优化字体加载 166

 
  

7.4.1 理解字体加载的问题 166

 
  

7.4.2 使用CSS font-display属性 168

 
  

7.4.3 使用字体加载API 169

 
  

7.4.4 使用Font Face Observer作为回退 173

 
  

7.5 小结 175

 
  

第8 章 保持JavaScript 的简洁与快速 176

 
  

8.1 影响脚本加载行为 176

 
  

8.1.1 合理放置<script>元素 177

 
  

8.1.2 使用异步脚本加载 178

 
  

8.1.3 使用async 178

 
  

8.1.4 在多脚本加载中可靠地使用async 180

 
  

8.2 使用更简洁的兼容jQuery 的替代方案 182

 
  

8.2.1 比较替代方案 182

 
  

8.2.2 探索竞品 182

 
  

8.2.3 比较大小 182

 
  

8.2.4 比较性能 183

 
  

8.2.5 实现替代方案 185

 
  

8.2.6 使用Zepto 185

 
  

8.2.7 理解使用Shoestring 或Sprint的注意事项 185

 
  

8.3 脱离jQuery 编码 186

 
  

8.3.1 检查DOM 是否准备就绪 186

 
  

8.3.2 选择元素并绑定事件 187

 
  

8.3.3 使用classList 操作元素上的类 188

 
  

8.3.4 读取和修改元素属性与内容 189

 
  

8.3.5 使用Fetch API 发起AJAX请求 192

 
  

8.3.6 使用Fetch API 192

 
  

8.3.7 Fetch API 的polyfill 193

 
  

8.4 使用requestAnimationFrame设置动画 194

 
  

8.4.1 requestAnimationFrame一览 194

 
  

8.4.2 计时器函数驱动的动画和requestAnimationFrame 194

 
  

8.4.3 比较性能 195

 
  

8.4.4 实现requestAnimationFrame 196

 
  

8.4.5 了解Velocity.js 198

 
  

8.5 小结 199

 
  

第9 章 使用Service Worker 提升性能 200

 
  

9.1 何为Service Worker 200

 
  

9.2 编写第 一个Service Worker 202

 
  

9.2.1 安装Service Worker 203

 
  

9.2.2 注册Service Worker 203

 
  

9.2.3 拦截并缓存网络请求 207

 
  

9.2.4 衡量性能收益 209

 
  

9.2.5 优化网络请求的拦截行为 209

 
  

9.3 更新Service Worker 212

 
  

9.3.1 文件版本控制 212

 
  

9.3.2 清理旧缓存 214

 
  

9.4 小结 215

 
  

第 10 章 微调资源传输 217

 
  

10.1 压缩资源 217

 
  

10.1.1 遵循压缩指导原则 218

 
  

10.1.2 使用Brotli 压缩 221

 
  

10.2 缓存资源 225

 
  

10.2.1 理解缓存 225

 
  

10.2.2 制定*佳缓存策略 230

 
  

10.2.3 使缓存资源失效 233

 
  

10.3 使用CDN 资源 234

 
  

10.3.1 使用CDN 托管资源 234

 
  

10.3.2 CDN 发生故障怎么办 236

 
  

10.3.3 使用子资源完整性验证CDN 资源 237

 
  

10.4 使用资源提示 239

 
  

10.4.1 使用preconnect 资源提示 239

 
  

10.4.2 使用prefetch 和preload资源提示 241

 
  

10.5 小结 243

 
  

第 11 章 HTTP/2 未来展望 245

 
  

11.1 理解HTTP/2 的必要性 245

 
  

11.1.1 理解HTTP/1 中的问题 246

 
  

11.1.2 通过HTTP/2 解决常见的HTTP/1 问题 248

 
  

11.1.3 在Node 中编写一个简单的HTTP/2 服务器 251

 
  

11.1.4 观察收益 253

 
  

11.2 探索HTTP/2 对应的优化技术变化 255

 
  

11.2.1 资源粒度与缓存效率 255

 
  

11.2.2 识别HTTP/2 的性能反模式 256

 
  

11.3 使用服务器推送抢先发送资源 257

 
  

11.3.1 理解服务器推送及其工作原理 258

 
  

11.3.2 使用服务器推送 258

 
  

11.3.3 测量服务器推送性能 261

 
  

11.4 同时优化HTTP/1 和HTTP/2 262

 
  

11.4.1 HTTP/2 服务器如何处理不支持HTTP/2 的浏览器 262

 
  

11.4.2 划分用户 263

 
  

11.4.3 根据浏览器功能提供资源 264

 
  

11.5 小结 269

 
  

第 12 章 使用gulp 自动化优化任务 270

 
  

12.1 关于gulp 270

 
  

12.1.1 为什么要使用构建系统 271

 
  

12.1.2 gulp 的工作原理 272

 
  

12.2 奠定基础 273

 
  

12.2.1 组织项目文件夹 273

 
  

12.2.2 安装gulp 及其插件 274

 
  

12.3 编写gulp 任务 277

 
  

12.3.1 剖析gulp 任务 277

 
  

12.3.2 编写核心任务 279

 
  

12.3.3 编写实用程序任务 285

 
  

12.4 深入理解gulp 插件 288

 
  

12.5 小结 289

 
  

附录A 工具参考 290

 
  

附录B 常用jQuery 功能的原生等价实现 295

 
  



 


   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP