翻譯不完整。請協助 翻譯此英文文件。
This page lists more theoretical in-depth articles about the SDK.
Contributor's guide
- Getting Started
- Learn how to contribute to the SDK: getting the code, opening/taking a bug, filing a patch, getting reviews, and getting help.
- Modules
- Learn about the module system used by the SDK (which is based on the CommonJS specification), how sandboxes and compartments can be used to improve security, and about the built-in SDK module loader, known as Cuddlefish.
- Classes and Inheritance
- Learn how classes and inheritance can be implemented in JavaScript, using constructors and prototypes, and about the helper functions provided by the SDK to simplify this.
- Private Properties
- Learn how private properties can be implemented in JavaScript using prefixes, closures, and WeakMaps, and how the SDK supports private properties by using namespaces (which are a generalization of WeakMaps).
- Content Processes
- The SDK was designed to work in an environment where the code to manipulate web content runs in a different process from the main add-on code. This article highlights the main features of that design.
SDK infrastructure
- Module structure of the SDK
- The SDK, and add-ons built using it, are of composed from reusable JavaScript modules. This explains what these modules are, how to load modules, and how the SDK's module tree is structured.
- SDK API lifecycle
- Definition of the lifecycle for the SDK's APIs, including the stability ratings for APIs.
- Program ID
- The Program ID is a unique identifier for your add-on. This guide explains how it's created, what it's used for and how to define your own.
- Firefox compatibility
- Working out which Firefox releases a given SDK release is compatible with, and dealing with compatibility problems.
SDK idioms
- Working With Events
- Write event-driven code using the the SDK's event emitting framework.
- Content scripts guide
- An overview of content scripts, including: what they are, what they can do, how to load them, how to communicate with them.
- Two Types of Scripts
- This article explains the differences between the APIs available to your main add-on code and those available to content scripts.
XUL migration
- XUL Migration Guide
- Techniques to help port a XUL add-on to the SDK.
- XUL versus the SDK
- A comparison of the strengths and weaknesses of the SDK, compared to traditional XUL-based add-ons.
- Porting Example
- A walkthrough of porting a relatively simple XUL-based add-on to the SDK.