Modifica ed espandi le applicazioni Mozilla

I componenti aggiuntivi arricchiscono di nuove funzionalità le applicazioni basate su Gecko come Firefox, SeaMonkey e Thunderbird. Esistono due diversi tipi di componenti aggiuntivi: le estensioni che aggiungono nuove funzionalità all'applicazione, mentre i temi modificano l'interfaccia utente.

Sia le estensioni che i temi vengono raccolti in un repository gestito da Mozilla su addons.mozilla.org, noto anche come AMO. Quando uno sviluppatore sceglie di caricare un componente aggiuntivo su AMO, esso viene sottoposto a una revisione e, se la supera, pubblicato sul sito per essere scaricato dagli utenti. Sottoporre i propri componenti aggiuntivi ad AMO non è obbligatorio, tuttavia costituisce la garanzia per gli utenti che il componente sia stato revisionato e offre agli sviluppatori visibilità su una piattaforma riconosciuta come fonte di applicazioni utili.

I componenti aggiuntivi possono alterare in maniera significativa il funzionamento dell'applicazione che li ospita. Mozilla ha quindi sviluppato una serie di linee guida per assicurare che ogni componente offra all'utente un'esperienza ottimale. Queste linee guida sono valide per tutti i tipi di componente aggiuntivo, che siano ospitati sul server di addons.mozilla.org o meno.


Estensioni

Le estensioni aggiungono nuove funzionalità alle applicazioni sviluppate da Mozilla come Firefox o Thunderbird. Possono integrare il browser con funzioni particolari, come per esempio un sistema alternativo per gestire le schede, e modificare i contenuti web per migliorare l'accessibilità o la sicurezza di un sito particolare.

Le estensioni possono essere sviluppate con tre tecniche diverse: estensioni basate su Add-on SDK, estensioni che si avviano manualmente senza richiedere il riavvio del browser ed estensioni overlay.

Quando possibile, è consigliabile utilizzare Add-on SDK, che sfrutta lo stesso meccanismo delle estensioni con riavvio non richiesto ma semplificando alcune operazioni ed eliminando automaticamente il codice superfluo. In caso Add-on SDK non soddisfi le proprie esigenze, l'alternativa è implementare manualmente un'estensione con riavvio non richiesto. Le estensioni overlay sono attualmente obsolete, anche se ne rimane in circolazione un numero elevato.

Per un approfondimento su quale tecnica sia più opportuno scegliere, ecco un articolo comparativo.

Pratiche consigliate

Indipendentemente dalle modalità con cui si sceglie di sviluppare un'estensione, esistono linee guida comuni da rispettare per garantire che il proprio componente offra la migliore esperienza utente possibile.

Prestazioni
Come rendere un'estensione veloce, reattiva e ottimizzata nel consumo della memoria.
Sicurezza
Come evitare di esporre l'utente a siti dannosi.
Etichetta
Come gestire l'interazione con altre estensioni correttamente.

Nozioni specifiche per applicazione

La maggior parte della documentazione è scritta pensando a chi sviluppa per Firefox Desktop. Gli sviluppatori che intendono progettare per altre applicazioni basate su Gecko devono prendere atto di alcune differenze fondamentali.

Thunderbird
Sviluppare estensioni per il client di posta elettronica Thunderbird.
Firefox per Android
Sviluppare estensioni per la versione di Firefox per il sistema operativo Android.
SeaMonkey
Sviluppare estensioni per la suite di applicazioni SeaMonkey.

Temi

I Temi sono componenti aggiuntivi in grado di personalizzare l'interfaccia utente dell'applicazione. Esistono due tipi di tema: temi di sfondo (o semplicemente "temi") e temi completi.

I temi di sfondo sono significativamente più semplici da implementare rispetto ai temi completi, ma offrono un livello di personalizzazione più limitato.

I temi completi consentono modifiche più radicali all'interfaccia utente dell'applicazione. La documentazione sui temi completi è attualmente incompleta, ma viene qui citata in previsione di futuri aggiornamenti.


Altri tipi di componente aggiuntivo

I plugin dei motori di ricerca sono un tipo di componente aggiuntivo semplice e specifico: aggiungono nuovi motori alla barra di ricerca del browser.

I plugin consentono all'applicazione di elaborare contenuti non supportati nativamente. Mozilla sta tentando di scoraggiare l'implementazione dei plugin, che hanno in passato causato problemi di stabilità, prestazioni e sicurezza.


Unisciti alla comunità extension development

Scegli il metodo che preferisci per unirti alla discussione: