Firefox浏览器UI 已迁移至使用 Web Components 构建

栏目: IT资讯 · 发布时间: 5年前

内容简介:Mozilla开发者Brian Grinstead在博客宣布,经过多年的努力,他已在几个星期前从Firefox UI中移除了XBL,亦即意味着将Firefox UI迁移至使用Web Components构建的工程已完成。

Mozilla开发者Brian Grinstead在博客宣布,经过多年的努力,他已在几个星期前从Firefox UI中移除了XBL,亦即意味着将Firefox UI迁移至使用Web Components构建的工程已完成。

XBL是一种基于XML的语言,当我们要实现附加到DOM元素的“绑定”就需要使用 XBL。然后,我们还可以将自定义JS属性和匿名内容添加到常规元素。XBL是在90年代末期为 NetScape设计和构建的,除了XBL,还有许多其他的“XUL”特性可帮助我们构建桌面Web应用——比Web平台提供相似的功能早得多。

Firefox大约有 300个XBL绑定和 50000行相关代码,主要都是被比较小型的部件使用(如),以及用于管理应用程序(如,它通过管理标签在浏览器窗口中控制大部分状态,以及从内容页面接收消息等)。

Firefox浏览器UI 已迁移至使用 Web Components 构建

我们可以将Firefox UI看作是一个非常大型的单页应用程序,最初采用DOM和JS构建,相对于20多年前的原生应用,它的技术选型十分大胆。也正因为Mozilla走得太超前,所以在Web平台尚未支持它们之前就自己实现了构建复杂Web应用所需的部分特性。这些特性在日后也逐渐演变成像CSS flexbox和Web Components这样的标准规范。

处于这种新老交替的时刻,让现有代码库继续使用原版本,并要求平台同时支持两者当然是最容易的,毕竟对旧代码进行重写十分困难而且成本巨大。

然而即便如此,Mozilla还是选择在Firefox中实现Web Components,他们启动了一个“并行”项目,在该项目中,团队将迁移现有的UI组件以使用它们。他们以“增量更新”的方式进行此操作,以便在保证 Firefox正常运行的同时进行每个独立的更改,而不是从头开始创建一个分支来重写UI。

Brian认为这是一项重大的成就,也给Firefox的底层提供了改进,还允许团队可以将精力集中在现代Web标准上,并移除没有对外公开的大量重复和复杂的功能。

至于为什么要使用Web Components,Brian表示由于XBL存在的问题,多年来团队一直在讨论移除XBL。但这项工程似乎十分庞大,并且看起来好像需要从头开始重写Firefox UI,所以一直没能有效推动项目的进展。后来团队进行了“设计审查”,并提议启动“并行项目”计划,以实现采用“增量更新”的方式实现迁移的目标。由于两者的模型非常相似,因此开发者在迁移元素时能做出合理的选择,以尽可能保持API的兼容性。


以上所述就是小编给大家介绍的《Firefox浏览器UI 已迁移至使用 Web Components 构建》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程式之美-微軟技術面試心得

程式之美-微軟技術面試心得

編程之美小 / 悅知文化 / 2008.06.20 / 490元

書內容分為以下幾個部分: ▓ 遊戲之樂:從遊戲和其他有趣問題出發,化繁為簡,分析總結。 ▓ 數字之魅:程式設計的過程實際上就是和數字及字元打交道的過程。這一部分收集了一些這方面的有趣探討。 ▓ 結構之法:彙集了常見的對字串、鏈表、佇列,以及樹進行操作的題目。 ▓ 數學之趣:列舉了一些不需要寫具體程式的數學問題,鍛煉讀者的抽象思考能力。 ▓ 書中絕大部分題目都提供了詳細......一起来看看 《程式之美-微軟技術面試心得》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具