Convenções de Capitalização

  • 10/22/2008
  • 2 minutos para ler
    • K
    • n
    • B
    • D
    • n
    • +10

As directrizes deste capítulo estabelecem um método simples para a utilização de casos assim, quando aplicado de forma consistente, faça identificadores para tipos, membros e parâmetros fáceis de ler.

Regras de capitalização para identificadores

Para diferenciar palavras em um identificador, capitalize a primeira letra de cada palavra no identificador. Não utilize sublinhados para diferenciar palavras, ou seja, em qualquer lugar nos identificadores. Existem duas formas apropriadas de capitalizar identificadores, dependendo do uso do identificador:

  • PascalCasing

  • camelCasing

A convenção PascalCasing, usada para todos os identificadores exceto nomes de parâmetros, capitaliza o primeiro caractere de cada palavra (incluindo acrônimos com mais de duas letras), como mostrado nos exemplos a seguir:

PropertyDescriptorHtmlTag

A convenção PascalCasing, usada apenas para nomes de parâmetros, capitaliza o primeiro caractere de cada palavra, exceto a primeira palavra, como mostrado nos exemplos a seguir. Como o exemplo também mostra, as siglas de duas letras que iniciam um identificador em forma de camelo são ambas minúsculas.

propertyDescriptorioStreamhtmlTag

✔️ DO use PascalCasing para todos os nomes de membros públicos, tipos e namespace consistindo de múltiplas palavras.

✔️ DO use camelCasing para nomes de parâmetros.

A tabela seguinte descreve as regras de capitalização para diferentes tipos de identificadores.

Identifier Casing Exemplo
Namespace Pascal namespace System.Security { ... }
Type Pascal public class StreamReader { ... }
Interface Pascal public interface IEnumerable { ... }
Método Pascal public class Object {
public virtual string ToString();
}
Propriedade Pascal public class String {
public int Length { get; }
}
Evento Pascal public class Process {
public event EventHandler Exited;
}
Campo Pascal public class MessageQueue {
public static readonly TimeSpan
InfiniteTimeout;
}
public struct UInt32 {
public const Min = 0;
}
Valor nominal Pascal public enum FileMode {
Append,
...
}
Parameter Camel public class Convert {
public static int ToInt32(string value);
}

Capitalizando Palavras Compostas e Termos Comuns

Os termos mais compostos são tratados como palavras únicas para fins de capitalização.

❌ NÃO capitalize cada palavra nas chamadas palavras compostas de forma fechada.

Estas são palavras compostas escritas como uma única palavra, tais como endpoint. Para fins de orientações de caixa, trate uma palavra composta de forma fechada como uma palavra única. Use um dicionário atual para determinar se uma palavra composta é escrita de forma fechada.

Pascal Camel Não
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

Sensibilidade do caso

Línguas que podem correr no CLR não são necessárias para suportar o casosensibilidade, embora alguns o façam. Mesmo que o seu idioma o suporte, outros idiomas que possam não ter acesso à sua estrutura não o fazem. Qualquer API que seja acessível externamente, portanto, não pode depender apenas da caixa para distinguir entre dois nomes no mesmo contexto.

❌ NÃO assuma que todas as linguagens de programação são sensíveis a maiúsculas e minúsculas. Elas não são. Os nomes não podem diferir apenas por caso.

Portions © 2005, 2009 Microsoft Corporation. Todos os direitos reservados.

Reimpresso com a permissão da Pearson Education, Inc. das 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.

>

Veja também

>

    >

  • Framework Design Guidelines
  • >

  • Naming Guidelines
  • >

Deixe uma resposta

O seu endereço de email não será publicado.