前端生态混乱,AMP&MIP在努力做标准化工作

作者 | Brilliant Open Web团队breezet

移动时代的前端似乎越来越混乱了,各种技术方案层出不穷,令开发者们目不暇接,不知如何选择。然而,生态越是混乱,对标准的呼唤就越强,因为只有标准化才能使得整个生态健康良好地发展。

AMP技术团队和MIP技术团队都非常明白这个道理,一直致力于从标准化出发,改善移动Web的体验。

注1:AMP(Accelerated Mobile Pages)是谷歌提供的网页加速技术,其官方网站是:https://developers.google.com/amp/。

注2:MIP,Mobile Instant Pages ,是一套应用于移动网页的开放性技术标准。通过提供 MIP-HTML 规范、MIP-JS 运行环境以及 MIP-Cache 页面缓存系统,使得移动页面更加符合移动上用户体验的要求。MIP的官方网站是:https://www.mipengine.org/,GitHub地址是:https://github.com/mipengine)

近日,AMP团队发表了《从AMP中学到的标准化课程》的博客,其中多次提及现在AMP正在解决和改善的移动Web的问题,也指出了能让Web变好的一个关键路径:让AMP的优秀实践成为标准的一部分,让更多的优秀能力沉淀到浏览器中,让非AMP页面也能变得和AMP页面一样拥有极致的用户体验。其中特别值得关注的是AMP团队公布了目前和AMP技术相关的一系列标准化事情,其中要解决的很多问题直中Web的体验缺陷要害,非常值得大家期待。下面是对重点标准的介绍与解读。

Web Packing

Web Packing用于解决内容分发平台在进行站点的内容Cache时,站点源页面(Origin URL)与Cache页面(Cache URL)的准确映射关系的。相当于描述了通用的云端加速的标准解决方案。此方面能力的增强,能让Web更便捷的使用页面预取、页面预渲染的极大程度提升页面性能的解决方案。目前处于标准草案阶段,并在IETF组织中进行讨论。

Iframe promotion

Iframe promotion是一个既有标准的功能改善提议。这使得内容分发平台能通过Iframe完成从分发页到内容页的良好页面切换交互。目前正在讨论孵化阶段。

Layout stability

AMP一直在解决的一个核心问题就是让页面元素的渲染尽量的稳定,这是移动上良好用户体验的一大关键点。但前端的组件技术是对此问题的一个hack处理,因此AMP也在思考如何对此进行标准的实现,即:提供一种可衡量用户无预期(无用户行为)的布局变化(比如未知尺寸的图片loaded和iframe resize)。当前正在与浏览器实现者讨论可行性。

Feature Policy

功能策略指的是能让开发者(站点)有选择的让页面能使用或不能使用浏览的功能和API,主要通过HTTP HEADER来进行设置和定义。当前已经在Chrome中落地,标准处于孵化阶段。

想了解更多,可以查看原文 Overview of web standards and features related to AMP:

https://github.com/ampproject/amphtml/blob/master/contributing/web-standards-related-to-amp.md#overview-of-web-standards-and-features-related-to-amp

结语

与大家分享这一重要信息的意义,在于我们看到国外的AMP团队正在通过推广AMP技术和从中总结的最佳实践标准,让Web体验变得更好,变得Native Like。

对于MIP技术团队来说,我们也正在积极与AMP技术团队一起讨论相关的标准方案与实现,并努力推动AMP/MIP相关的标准方案在百度APP等浏览器的落地。也在努力研发一系列Web base的解决方案,让更多的开发者能通过MIP或新的Web技术构建良好用户体验的Web应用。

在生态混乱的时代,我们对极致Web体验的探索从未停止过,任何混乱与纷争,都将被标准终结。对于Web来说,这是最坏的时代,也是最好的时代。