我的团队成员之间有一个关于常量类声明的辩论。我们将常量变量移到一个单独的类中,如下所示。
public class Constants
{
public const string StateId = "ST";
public const string CountryId = "CI";
}
我的一些团队成员建议我们将类声明为密封的,以避免覆盖选项,还有一些建议我们将其标记为静态,以避免创建Constant类的实例。
但是,我更喜欢使用静态构造函数将其作为Sealed,因为它将帮助我们在将来需要时初始化只读变量。请给我们一些建议。
无论您采用哪种方法,都应考虑使用系统中的接口而不是常量类本身,以避免对象与“全局”类型类之间的依赖关系?
—
dreza
因此,您同意将类设为静态,只是问是否现在还是以后应该添加静态构造函数?我在您的问题中没有任何反对意见,请澄清。
—
布朗
推荐读物:为什么问“最佳实践”是一件坏事?
—
t 2014年
我不明白你的问题。如果类没有实例成员,则可以对其进行标记
—
CodesInChaos
static
。这与是否存在静态构造函数完全正交。
您的常数实际上是数学意义上的常数,还是这是一种配置形式?
—
CodesInChaos