È questo:
public MyClass
{
public const string SomeString = "SomeValue";
}
peggio di così:
public MyClass
{
public static string SomeString { get{ return "SomeValue";}}
}
È possibile fare riferimento a entrambi allo stesso modo:
if (someString == MyClass.SomeString)
...
Il secondo, tuttavia, ha la protezione di essere una proprietà. Ma davvero quanto è meglio di una const?
Ho imparato più e più volte i pericoli di avere campi pubblici. Quindi, quando ho visto del codice utilizzare queste costanti in campi pubblici, ho immediatamente iniziato a rifattorizzarle in proprietà. Ma a metà strada, mi sono chiesto quale beneficio fosse avere le proprietà statiche sulle costanti.
Qualche idea?