Salve,

sto progettando un'applicazione per il web organizzata a moduli (intesi come applicazioni separate), questi moduli usano o possono usare le API messe a disposizione (es. templates, gestione utenti, ecc.).

Vorrei fare in modo che il core e le funzionalità del programma possano essere estese per mezzo di plugin così da facilitare sia le estensioni, anche da parte di terzi, sia le modifiche e le correzioni di bug oppure permettere di disabilitarne alcuni per adattare il sistema a diverse esigenze o ancora permettere ai moduli di risfruttare lo stesso sistema per gestire dei propri plugin...

Ci sono dei pattern che permettono una gestione tipo questa? Avete dei suggerimenti?