Nel suo articolo Costanti (Guida per programmatori C #) , Microsoft fornisce il seguente esempio:
class Calendar3
{
const int months = 12;
const int weeks = 52;
const int days = 365;
const double daysPerWeek = (double) days / (double) weeks;
const double daysPerMonth = (double) days / (double) months;
}
Quindi, per le costanti, sembra che Microsoft stia raccomandando l'uso di camelCasing
. Ma nota che queste costanti sono definite localmente .
Probabilmente, la denominazione di costanti visibili esternamente è di maggiore interesse. In pratica, Microsoft documenta le sue costanti pubbliche nella libreria di classi .NET come campi . Ecco alcuni esempi:
I primi due sono esempi di PascalCasing
. Il terzo sembra seguire le Convenzioni di capitalizzazione di Microsoft per un acronimo di due lettere (sebbene pi non sia un acryonym). E la quarta sembra suggerire che la regola per un acryonym di due lettere si estende ad un acronimo o identificatore di una singola lettera come E
(che rappresenta la costante matematica e ).
Inoltre, nel suo documento sulle convenzioni di capitalizzazione, Microsoft afferma direttamente che gli identificatori di campo devono essere nominati tramite PascalCasing
e fornisce i seguenti esempi per MessageQueue.InfiniteTimeout e UInt32.Min :
public class MessageQueue
{
public static readonly TimeSpan InfiniteTimeout;
}
public struct UInt32
{
public const Min = 0;
}
Conclusione: utilizzare PascalCasing
per costanti pubbliche (che sono documentate come const
ostatic readonly
campi).
Infine, per quanto ne so, Microsoft non sostiene convenzioni specifiche di denominazione o capitalizzazione per identificatori privati, come mostrato negli esempi presentati nella domanda.