Sistemi operativi:
* Linux: Utilizza ampiamente moduli di kernel carichi (LKMS) per aggiungere driver di dispositivi, filesystem e altre funzionalità a livello di sistema.
Browser Web:
* Firefox: Storicamente, Firefox era molto popolare per le sue estensioni (sebbene il sistema di estensione sia cambiato nel tempo).
* Chrome: Utilizza estensioni, sebbene con sicurezza più rigorose e linee guida API rispetto a Firefox più vecchi.
Server Web:
* Apache: Utilizza i moduli per aggiungere funzionalità come supporto PHP, riscrittura dell'URL, funzionalità di sicurezza, ecc.
Sistemi di gestione dei contenuti (CMS):
* WordPress: Utilizza ampiamente i plugin. WordPress è interamente basato su plugin.
* Drupal: Usa i moduli.
* Joomla !: Usa le estensioni.
ambienti di sviluppo integrato (IDE):
* Codice Visual Studio: Fortemente basato su estensioni. Quasi tutte le funzionalità del codice VS sono implementate come estensioni.
* Eclipse: Utilizza plugin.
* Idea Intellij (e altri ides jetbrains): Utilizza plugin.
Software di editing audio/video:
* Adobe Photoshop: Utilizza plugin per filtri, formati di file e altre funzionalità.
* Adobe Premiere Pro: Utilizza plugin per effetti, transizioni e supporto del codec.
* Audacity: Utilizza plugin (effetti, analisi audio, ecc.).
Software di modellazione 3D:
* Blender: Utilizza script Python e componenti aggiuntivi per una vasta gamma di funzionalità.
* Autodesk Maya: Utilizza script e plugin Mel (Maya Embedded Language).
motori di gioco:
* Unity: Utilizza "risorse" (che possono includere codice, modelli, trame, ecc.) Che possono essere aggiunti ai progetti.
* Motore irreale: Utilizza plugin.
Altri esempi:
* Media Lettore (ad es. VLC): Utilizzare i plugin per il supporto del codec e altre funzionalità.
* Editori di testo (ad es. Testo sublime): Utilizzare i plugin per il supporto linguistico, il completamento del codice, ecc.
* Sistemi di database (ad es. PostgreSQL): Consenti alle estensioni di aggiungere nuovi tipi di dati, funzioni e altre funzionalità.
Funzionalità chiave dei moduli di supporto/plug -in di software:
* API ben definita (interfaccia di programmazione dell'applicazione): Questo è cruciale. Il software fornisce un set definito di funzioni, classi e strutture di dati che i plugin possono utilizzare per interagire con il sistema principale. Un'API stabile è vitale in modo che i plugin non si rompano con ogni aggiornamento del software.
* Meccanismo di caricamento del plugin/modulo: Il software ha bisogno di un modo per scoprire, caricare e inizializzare i plugin. Ciò può comportare directory di scansione, utilizzare file di configurazione o fornire un'interfaccia di gestione dei plug -in.
* Considerazioni sulla sicurezza: Importante. Il software deve isolare i plugin in una certa misura per evitare che i plugin dannosi o scarsamente scritti si arrestano a arrestare l'intero sistema o compromettendo la sicurezza. Ciò comporta spesso sandboxing o limitare le autorizzazioni che hanno i plugin.
* Gestione della dipendenza: Un sistema per la gestione delle dipendenze (altri plugin, librerie o risorse) richiesti dai plugin.
* Metadati del plugin: Informazioni su un plug -in (nome, versione, autore, descrizione, dipendenze) che il software può utilizzare per gestire i plugin.
Considerazioni importanti quando si sceglie una piattaforma con un'architettura del plug -in:
* La qualità dell'API: È ben documentato, stabile e completo?
* La dimensione dell'ecosistema del plug -in: Ci sono già molti plugin disponibili per le attività che devi eseguire?
* Il modello di sicurezza: In che modo la piattaforma si protegge da plugin dannosi?
* Il processo di sviluppo del plugin: È facile creare e distribuire plugin per la piattaforma?
* Performance: Quanto i plugin influiscono sulle prestazioni complessive del software?
In sintesi, ci sono * molti * programmi software che consentono agli utenti e agli sviluppatori di estendere la loro funzionalità attraverso moduli o plugin. Il programma specifico di cui hai bisogno dipende interamente dal tipo di funzionalità che stai cercando di estendere.
software © www.354353.com