Per imparare Javascript sto costruendo una semplice applicazione a pagina singola. Si tratta di un'app per presentazioni di base che deve solo elaborare alcune impostazioni di base ed eseguire alcuni comportamenti. La struttura di base del mio codice è quindi:
var settings = { ... };
function initStartPage() { ... };
function initSlideshow() { ... };
function settingsHandler() { ... };
function doSomething() { ... };
... dove ogni funzione deve accedere e possibilmente modificare i dati contenuti nella variabile settings
.
Sono un po 'stordito su come potrei essere in grado di strutturare questo senza usare variabili globali o costrutti inutilmente complicati. Sono abituato a programmare in Java o C, dove le variabili per le piccole app possono vivere comodamente nella funzione principale. L'unica soluzione che posso pensare di eliminare l'ambito globale è il semplice namespacing:
var namespace = {};
namespace.settings = { ... };
namespace.initStartPage = function() { ... };
namespace.initSlideshow = function() { ... };
namespace.settingsHandler = function() { ... };
namespace.doSomething = function() { ... };
Quindi le mie domande sono:
1. È una soluzione ragionevole per un sistema in cui molte parti accederanno agli stessi dati?
2. Esiste una soluzione migliore e più standard?