Ho una base di codice composta da più script e molte funzioni. Tutto è controllato da uno script principale ( master.txt
, diciamo).
Ho molti file di configurazione "globali", ad esempio l'URL, l'accesso e la password del servizio web con cui sto comunicando (questo cambia tra test e produzione) e alcuni parametri di ottimizzazione per un algoritmo di ottimizzazione nascosto in profondità all'interno degli altri script.
Voglio configurare questi parametri spesso, e preferibilmente facilmente. Qual è il modo migliore per farlo?
Finora, ho pensato alle seguenti opzioni:
- Una variabile globale
parameters
definita all'inizio, che memorizza tutte queste opzioni ed è accessibile dall'interno delle funzioni profonde - Una variabile
parameters
definita all'inizio e passata come argomento di funzione aggiuntivo in ogni chiamata di funzione - Un file di testo come
parameters.yaml
che viene letto ogni volta che una funzione deve accedere a un valore da esso.
Attualmente sto usando la prima opzione, ma non mi sembra giusto, dato che le funzioni stanno accedendo ai dati che non sono passati a loro. D'altra parte, la seconda opzione rende ogni chiamata di funzione inutilmente complessa aggiungendo un argomento aggiuntivo.
Sicuramente non sono il primo ragazzo con questo problema e esiste una soluzione standard per questo, giusto?