新的Firefox扩展技术
2016-06-21
Firefox引入了一套新的扩展技术,名为WebExtensions。通过这种新的扩展技术,浏览器可以拥有一个更现代的界面,兼容性、性能和安全性也更强。
浏览器Firefox是不断变化的,但新功能并不总是受欢迎的。当Mozilla宣布新一代的扩展API时,即刻引发了一股愤怒的浪潮。Firefox用户担心他们最喜欢的扩展程序可能从此消失,扩展程序开发商担心他们多年付出的努力从此付之东流。那么,这究竟是怎么一回事呢?
被取而代之的是过时的而又繁琐的跨平台组件对象模型(Cross Platform Component Object Model,简称XPCOM)、XML绑定语言(XML Binding Language,简称XBL)和XML用户界面语言(XML User Interface Language,简称XUL),按目前的情况来看,Firefox的扩展程序未来将使用WebExtensions技术实现。这个新的接口(https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API)是一项兼容GoogleChrome Blink API的技术。
这一新的扩展技术有两个优点、一个缺点:首先,WebExtensions是一个历经15年的成熟的扩展技术,使用它远比Firefox自己另外开发更方便。其次,GoogleChrome和Opera的扩展程序都基于类似的技术,因而,开发人员可以更容易地让自己的扩展程序适用于更多的浏览器。但随之而来的问题是:旧的扩展技术将不被支持,旧的扩展程序不重新编程就无法继续用于Firefox。
像一个简单的网站
新的WebExtensions技术背后的想法很简单:开发扩展程序应该是很容易的,应该像开发网站一样,开发人员只需编写一次代码,扩展程序即可在各种浏览器上应用,不需要做太多的修改,扩展程序即可工作在Firefox及Chrome、Opera、Safari等浏览器上,甚至包括微软最新的浏览器Edge,只要未来Windows 10的浏览器支持扩展程序,那么这自然也不在话下。
因此,在这个新的扩展技术下,将可以看到大量JavaScript、HTML和CSS等Web开发的元素,因为新的WebExtensions扩展程序基本上就是一个简单的网站。……
