Esta es una pregunta sobre las mejores prácticas de codificación. Me gustaría saber el consenso sobre cómo evitar mejor las cadenas de caracteres y los valores en una aplicación .NET. Lo que he visto hasta el momento en el que han trabajado anteriormente: los archivos .resxCómo evitar las cadenas de codificación rígida
- utilizando recursos
- almacenar estos valores y cadenas en App.config o web.config
que hacen un ApplicationStrings estáticos de clase y declarando todas las cadenas y valores allí:
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"; }
sin embargo, no es la tercera método, sólo otro hardcode? ¿Tiene sentido tener una clase así? El beneficio sería que todas las cadenas están en un solo lugar, pero ¿realmente se está evitando un hardcode?
Además, si ha desarrollado otros hábitos para esta situación, no dude en publicar.
Prefiero los campos estáticos de solo lectura sobre las constantes aquí. Las constantes son más para cosas que tendrán el mismo valor para siempre. Lo que hace que su semántica de versionamiento binario sea un poco molesta. – CodesInChaos