J'ai plusieurs applications qui ont besoin de lire et d'écrire les paramètres de l'application. Puisque l'une des applications est une ancienne application C++ avec des centaines de paramètres dans le registre (et qui ne change pas) et il y a aussi quelques paramètres stockés dans un format de base de données propriétaire, je me demande comment l'architecture pourrait être configurée autoriser une seule interface pour lire et/ou écrire les paramètres. Une idée est qu'il y ait une énumération géante avec tous les paramètres possibles et une division qui dirige la demande de lecture/écriture, basée sur une déclaration de cas géante, vers le lecteur ou l'auteur correct. Dans le cas du registre, il faudrait ensuite analyser les possibilités d'enum pour trouver l'emplacement de la clé (si c'est un paramètre Http ici, si c'est un paramètre d'installation situé à cette touche). Toute cette idée me fait penser à la non-OOP et trop de tests manuels. Gardez à l'esprit qu'il existe environ 30 paramètres de base de données, et peut-être 70 paramètres de registre.C# SETTINGS architecture
public class SettingsTest
{
public enum ESetting
{
HttpUserName, HttpPassword, SetupAllowPublic, //db server stored
HttpProxyUsername, HttpProxyPassword, PublicOrPrivate //registry stored
}
public string GetSetting(ESetting setting)
{
if (IsSettingInRegistry(setting)
return RegHandler.GetFromRegistry(setting);
else
return DBHandler.GetFromDB(setting);
}
}
Vous êtes en train de réinventer une roue (ou plus) ici. – leppie
Quelle roue? Quelle réinvention? Quelque chose d'utile? – rediVider