Language Bindings

一款 XPCOM 的语言绑定是连接某种特定的程序设计语言与 XPCOM 之间的纽带,用于实现下述的两个目标:

  • 允许在特定的程序设计语言中访问 XPCOM 对象(在这里,访问的意思是能够读取、写入和创建 XPCOM 对象以及调用这些对象的方法)。
  • 暴露特定的程序设计语言编写的模块并使之成为一个 XPCOM 对象,从而允许所有已绑定的其它程序设计语言能够访问这些模块。

由于 XPCOM 层本身使用 C/C++ 编写,因此可以使用 C/C++ 直接访问其 API。而当其它的程序设计语言需要访问该 API 时,则需要通过额外的桥接层来实现。

对于一些程序设计语言,业已存在这样的桥接层:

  • JavaScript: XPConnect (作为 Firefox 的一部分活跃于许多 XUL 应用中)
  • Java: JavaXPCOM (并不是 Firefox 的组成部分,但包含于默认的 XULRunner 编译版中,在一些基于 Eclipse 的应用中得以使用)
  • Python: PyXPCOM (并不是任何默认编译版的一部分,但是在 ActiveState Komodo 产品线中被积极的使用)
  • Perl: PlXPCOM
  • Ruby: RbXPCOM

如果您想要了解如何使用这些桥接层,请参考相关页面以获得更详尽的信息。

Document Tags and Contributors

Contributors to this page: XueCan, Klp99
最后编辑者: XueCan,