Convenzioni di capitalizzazione

  • 10/22/2008
  • 2 minuti per leggere
    • K
    • n
    • B
    • D
    • n
    • +10

Le linee guida di questo capitolo stabiliscono un semplice metodo per l’uso del caso che, se applicate coerentemente, rendono gli identificatori per tipi, membri e parametri facili da leggere.

Regole di capitalizzazione per gli identificatori

Per differenziare le parole in un identificatore, metti in maiuscolo la prima lettera di ogni parola nell’identificatore. Non usare underscore per differenziare le parole, o per questo, da nessuna parte negli identificatori. Ci sono due modi appropriati per capitalizzare gli identificatori, a seconda dell’uso dell’identificatore:

  • PascalCasing

  • camelCasing

La convenzione PascalCasing, usata per tutti gli identificatori eccetto i nomi dei parametri, capitalizza il primo carattere di ogni parola (inclusi gli acronimi di lunghezza superiore a due lettere), come mostrato nei seguenti esempi:

PropertyDescriptorHtmlTag

Un caso speciale è fatto per gli acronimi di due lettere in cui entrambe le lettere sono maiuscole, come mostrato nel seguente identificatore:

IOStream

La convenzione camelCasing, usata solo per i nomi di parametri, capitalizza il primo carattere di ogni parola tranne la prima, come mostrato nei seguenti esempi. Come mostra anche l’esempio, gli acronimi di due lettere che iniziano un identificatore in camelCasing sono entrambi minuscoli.

propertyDescriptorioStreamhtmlTag

✔️ Usate il PascalCasing per tutti i nomi di membri pubblici, tipi e namespace che consistono di più parole.

✔️ Usate il camelCasing per i nomi dei parametri.

La seguente tabella descrive le regole di capitalizzazione per diversi tipi di identificatori.

Identifier Casing Example
Namespace Pascal namespace System.Security { ... }
Type Pascal public class StreamReader { ... }
Interface Pascal public interface IEnumerable { ... }
Metodo Pascal public class Object {
public virtual string ToString();
}
Proprietà Pascal public class String {
public int Length { get; }
}
Evento Pascal public class Process {
public event EventHandler Exited;
}
Field Pascal public class MessageQueue {
public static readonly TimeSpan
InfiniteTimeout;
}
public struct UInt32 {
public const Min = 0;
}
Valore Enum Pascal public enum FileMode {
Append,
...
}
Parametro Camel public class Convert {
public static int ToInt32(string value);
}

Capitalizzazione di parole composte e termini comuni

Molti termini composti sono trattati come parole singole ai fini della capitalizzazione.

❌ NON mettere in maiuscolo ogni parola nelle cosiddette parole composte in forma chiusa.

Sono parole composte scritte come una sola parola, come endpoint. Per lo scopo delle linee guida sul casing, trattare una parola composta in forma chiusa come una parola singola. Usa un dizionario corrente per determinare se una parola composta è scritta in forma chiusa.

Pascal Camel Non
BitFlag bitFlag Bitflag
Callback callback CallBack
Canceled canceled Cancelled
DoNot doNot Don't
Email email EMail
Endpoint endpoint EndPoint
FileName fileName Filename
Gridline gridline GridLine
Hashtable hashtable HashTable
Id id ID
Indexes indexes Indices
LogOff logOff LogOut
LogOn logOn LogIn
Metadata metadata MetaData, metaData
Multipanel multipanel MultiPanel
Multiview multiview MultiView
Namespace namespace NameSpace
Ok ok OK
Pi pi PI
Placeholder placeholder PlaceHolder
SignIn signIn SignOn
SignOut signOut SignOff
UserName userName Username
WhiteSpace whiteSpace Whitespace
Writable writable Writeable

Case Sensitivity

I linguaggi che possono girare sul CLR non sono tenuti a supportare la sensibilità al maiuscolo/minuscolo.sensibilità, anche se alcuni lo fanno. Anche se la vostra lingua la supporta, altre lingue che potrebbero accedere al vostro framework non lo fanno. Qualsiasi API accessibile dall’esterno, quindi, non può basarsi solo sul caso per distinguere tra due nomi nello stesso contesto.

❌ NON supporre che tutti i linguaggi di programmazione siano sensibili alle maiuscole e alle minuscole. Non lo sono. I nomi non possono differire solo in base alle maiuscole e alle minuscole.

Portate © 2005, 2009 Microsoft Corporation. Tutti i diritti riservati.

Ristampato con il permesso di Pearson Education, Inc. da Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition by Krzysztof Cwalina and Brad Abrams, published Oct 22, 2008 by Addison-Wesley Professional as part of the Microsoft Windows Development Series.

See also

  • Framework Design Guidelines
  • Naming Guidelines

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.