Convenções de nomeação gerais
As convenções de nomenclatura gerais discutem escolhendo os melhores nomes para os elementos em suas bibliotecas. Essas diretrizes se aplicam a todos os identificadores. As seções posteriores discutem nomes elementos específicos como, por exemplo, namespaces ou propriedades.
Opção de palavra
Escolha os nomes de identificador facilmente legível. Por exemplo, uma propriedade chamada HorizontalAlignment é mais legível em inglês do que AlignmentHorizontal.
Favorecer a legibilidade sobre questões de brevidade. O nome da propriedade CanScrollHorizontally é melhor do que ScrollableX (uma referência obscura para o eixo X).
Não use sublinhados, hifens ou quaisquer outros caracteres não alfanuméricos.
Não use a notação húngara.
Notação húngara é a prática de incluir um prefixo em identificadores para codificar alguns metadados sobre o parâmetro, como, por exemplo, o tipo de dados do identificador.
Evite usar identificadores que entram em conflito com palavras-chave das linguagens de programação amplamente utilizadas.
Embora as linguagens compatíveis com CLS devem fornecer uma maneira de usar palavras-chave como palavras comuns, as práticas recomendadas ditam para não forçar a desenvolvedores para saber como fazer isso. A maioria das linguagens de programação, a documentação de referência de linguagem contém uma lista de palavras-chave usadas pelos idiomas. A tabela a seguir fornece links para a documentação de referência para algumas linguagens de programação amplamente utilizadas.
Linguagem |
Link |
---|---|
C# |
|
C++ |
|
Visual Basic |
Abreviações e acrônimos
Em geral, você não deve usar abreviações ou acrônimos. Esses tornam seus nomes menos legível. Da mesma forma, é difícil saber quando é seguro pressupor que o acrônimo é amplamente reconhecido.
Para regras de capitalização para abreviações, consulte Convenções maiúsculas.
Não use abreviações ou contrações como partes de nomes de identificador.
Por exemplo, use OnButtonClick em vez de OnBtnClick.
Não use qualquer acrônimos que não são amplamente aceitas, e somente quando necessário.
Nomes específicos do idioma
Use nomes semanticamente interessantes, em vez de palavras-chave específicas de idioma para os nomes de tipo. Por exemplo, GetLength é um nome melhor que GetInt.
Use o common language runtime (CLR) tipo nome genérico, em vez de um nome de idioma específico, mesmo nos raros casos quando um identificador não tem nenhum significado semântico além do seu tipo.
Por exemplo, um método que converte os dados para Int16 deve ser nomeado ToInt16, e não ToShort porque Short é o nome do tipo de idioma específico para Int16.
A tabela a seguir mostra os nomes de tipo de idioma específico para as linguagens de programação comuns e a contraparte do CLR.
Nome do tipo C#. |
Digite um nome de Visual Basic |
Nome do tipo JScript |
Nome de tipo do Visual C++ |
Ilasm. exe representação |
Nome do tipo CLR |
---|---|---|---|---|---|
sbyte |
SByte |
sByte |
char |
int8 |
SByte |
Byte |
Byte |
Byte |
caracteres não assinados |
int8 não assinado |
Byte |
short |
Short |
short |
short |
Int16 |
Int16 |
ushort |
UInt16 |
ushort |
unsigned short |
int16 não assinado |
UInt16 |
int |
Integer |
int |
int |
Int32 |
Int32 |
uint |
UInt32 |
uint |
unsigned int |
int32 não assinado |
UInt32 |
long |
Long |
long |
__int64 |
Int64 |
Int64 |
ulong |
UInt64 |
ulong |
unsigned __int64 |
int64 não assinado |
UInt64 |
float |
Simples |
float |
float |
float32 |
Simples |
double |
Double |
double |
double |
float64 |
Double |
bool |
Boolean |
Booleano |
bool |
bool |
Boolean |
char |
Char |
char |
wchar_t |
char |
Char |
string |
String |
string |
String |
string |
String |
object |
Object |
object |
Object |
object |
Object |
Use um nome comum, como, por exemplo, valor ou item em vez de repetir o nome de tipo, mesmo nos raros casos quando um identificador não tem nenhum significado semântico e o tipo do parâmetro não é importante.
Portions Copyright 2005 Microsoft Corporation. Todos os direitos reservados.
Portions Copyright Addison-Wesley Corporation. Todos os direitos reservados.
Para obter mais informações sobre as diretrizes de design, consulte a "diretrizes de Design do Framework: Convenções, idiomas e padrões de reutilizável.Bibliotecas de rede" catálogo por Krzysztof Cwalina e Brad Abrams, publicado pela Addison-Wesley, 2005.
Consulte também
Outros recursos
Diretrizes de Design para desenvolvimento bibliotecas de classe