Dies ist eine Frage zu den besten Codierungspraktiken. Ich möchte wissen, wie der Konsens darüber aussieht, wie man am besten das Hardcodieren von Zeichenfolgen und Werten in einer .NET-Anwendung vermeiden kann. Was ich bisher gesehen habe, wo ich zuvor gearbeitet habe:
- Verwendung von Ressourcen .resx-Dateien
- Speichern dieser Werte und Zeichenfolgen in App.config oder web.config
-
Erstellung einer statischen Klasse ApplicationStrings und Deklarierung aller Zeichenfolgen und Werte darin:
public static class ApplicationStrings { #region constants public const string APPLICATION_NAME = "X"; public const string APPLICATION_RESOURCEMANAGER_NAME = "ResourceManagerX"; public const string APPLICATION_DEFAULT_LOGFILENAME = "log.txt"; }
Ist jedoch die 3. Methode nicht einfach ein weiteres Hardcoding? Macht es Sinn, eine solche Klasse zu haben? Der Vorteil wäre, dass alle Zeichenfolgen an einem Ort sind, aber vermeidet das wirklich ein Hardcoding?
Wenn Sie auch andere Gewohnheiten für diese Situation entwickelt haben, fühlen Sie sich frei zu posten.
1 Stimmen
Ich hätte hier lieber statische schreibgeschützte Felder als Konstanten. Konstanten sind eher für Dinge gedacht, die immer den gleichen Wert haben werden. Dies macht ihre binäre Versionssemantik ein wenig ärgerlich.