4. 性能

最佳实践

扩展模块

性能的核心在于让您的网站尽可能快,包括实际性能(例如文件大小小、加载速度快)以及性能给人的感受(例如显示进度并尽快将初始内容变为可用状态,即使并非所有内容都已加载)。

4.1 性能基础

学习成果

  • 理解实际性能和感知性能的概念以及两者之间的区别。

  • 理解关键性能概念

    • 源顺序。

    • 关键路径。

    • 延迟。

    • 浏览器如何渲染页面。

  • 理解性能如何影响可持续性——良好的性能可以通过减少能源消耗和带宽使用量,对地球产生积极影响。

    • 能效

    • 硬件效率(可维修性/利用率)。

    • 需求效率

      • 空间(您在哪里执行计算)。

      • 时间(您何时执行计算)。

资源

4.2 改进页面渲染

学习成果

  • 如何减少页面加载时间

    • 使用最佳媒体格式和压缩。

    • 从静音视频中移除不必要的音频。

    • 使用 video preload 属性来减少初始下载量。

    • 考虑使用自适应流。

    • 使用 width 和 height 属性减少媒体加载卡顿。

    • 谨慎选择字体——尽量减小文件大小,例如只包含您需要的字形、变体和粗细。

  • 如何改进“可用时间”

    • 通过最初只显示重要内容来最小化初始加载。尽快使重要的交互功能可用。

    • 当用户使用页面时,可以在后台加载其他数据和资源。

    • 对不需要立即使用的图像和其他资源使用延迟加载。

  • 如何提高功能的感知性能

    • 使用动画在状态之间过渡,而不是让用户等待最终状态。

    • 使用加载微调器和进度条指示进度,让用户感觉有事情在发生。

    • 明智地使用事件,例如在 keydown 时触发操作,而不是等待 keyup

资源

4.3 衡量性能

学习成果

  • 理解衡量性能的关键指标,例如首次内容绘制、速度指数、总阻塞时间、跳出率、独立用户/页面浏览量。

  • 如何使用常用的性能测量工具

  • 如何使用 Performance Web APIs 创建自己的性能测量工具

    • Performance Timeline API。

    • Navigation Timing API。

    • User Timing API。

    • Resource Timing API。

资源

4.4 CSS 与性能

学习成果

  • 理解改进 CSS 性能的技术

    • 仅在需要时加载;使用媒体查询进行优化。

    • 最小化动画,并强制 GPU 执行动画。

    • 最小化重绘。

    • 适当地使用 will-changecontain

资源

4.5 JavaScript 与性能

学习成果

  • 理解改进 JavaScript 性能的技术

    • 减少使用的 JavaScript 量。

    • 仅在需要时加载 JavaScript,并移除未使用的代码。

    • 适当地使用延迟/异步 JavaScript。

    • 压缩、打包和拆分 JavaScript。

资源

上一篇:3. Web APIs 下一篇:5. 安全与隐私