Nel mio progetto ho alcune costanti in cui faccio riferimento quasi ovunque:
public sealed class Constants{
public static readonly int MAX_QUAL { get; } = 1080;
public static readonly bool CC { get; set;} = false;
}
È una buona pratica memorizzare questi valori nel codice dell'applicazione stesso, in modo simile allo snippet precedente, o nei file di configurazione (App.config / Web.config / project.json / Manifest.xml ecc.),
<appSettings>
<add key="MAX_QUAL" value="1080" />
<add key="CC" value="false" />
</appsettings>
e poi leggerli attraverso questi file sul runtime?
public static readonly int MAX_QUAL { get; } = Convert.ToInt32(
System.Configuration.ConfigurationManager.AppSettings["MAX_QUAL"]);
Voglio strutturare l'applicazione in modo che i non sviluppatori possano modificare questi valori se necessario, senza dover cambiare il codice sorgente stesso. Uno scenario è quando il provider cambia la chiave SDK mentre lo sviluppatore è fuori per le vacanze e qualcuno deve aggiornare questi valori.