Você está na página 1de 6

Convenção de codificação em C#

1. Convenções de escritura para projetos .NET/C#.


Estilos de letras maiúsculas

Definimos três tipos de escritura de identificadores o palavras.

a) Pascal Case
• A primeira letra na identificação e a primeira letra de cada palavra concatenada
subsequente é maiúscula.
• Exemplo:
o BackColor, DataSet, NomeProfesor, SenhaDoCliente

b) Camel Case
• A primeira letra da identificação é minúscula e a primeira letra de cada palavra
concatenada subsequente é maiúscula.
• Exemplo:
o numeroDeDias, eValido, nomeEstudiante,
quantidadeDeLitrosVendidos, senhaDepartamento

c) Upper Case
• Todas as letras do identificador devem ser maiúsculas. Use esta convenção apenas
em identificadores que consistem em duas ou menos letras.
• Exemplo:
o ID, PI

d) Notação húngara
• A notação húngara é uma convenção para identificar variáveis em um programa de
computador. Esta especificação indica que cada variável deve ser precedida por um
indicador de 1 ou mais letras que especificam o tipo de variável.
• Exemplo:
string strNombre;
int intCantidad;
double dblPrecioTotal;

Tipo de Dado Prefixo Exemplo


int int intQuantidade
long lng lngIndice
byte byt bytData
float flt fltTotalAnual
double dbl dblTotal
bool bln blnExiste
char chr chrLetra
string str strNome
DateTime dtm dtmDataDeNascimento

2. Convenções de nomeação
a) Variáveis privadas (campos em C#)
• Deve-se usar Camel Case.

Endereço: Av. Pedro de Castro Vandunem n.º 9, Edifício Valência, 1º Andar, Porta Direita. Mundo Verde, Luanda - Angola
Tel.: +244 921 953 600 | +244 222 789790 | Email: geral@treinp.ao
1
Convenção de codificação em C#

• A variável deve ser identificada com a notação húngara.


• Deve ser identificado com o prefixo "_".

Exemplo:

public class Cliente {


string _strNome; // Por ser membro privado da classe (Campos) tem "_".
/// <summary>
/// Propiedade Public Nome
/// </summary>
public string Nome {
get {return _strNome;}
set {_strNome = value;}
}
}

b) Variáveis locais
• Deve-se usar Camel Case.
• A variável deve ser identificada com a notação húngara.

Exemplo:

public override string ToString() {


string strReturnValue = "";
strReturnValue += "Esta é uma String... \n";
return strReturnValue;
}

c) Namespaces
• A regra geral para nomear Namespaces é usar a empresa seguida da Tecnologia
usada. Opcionalmente, a característica e o design podem ser indicados.

using CompanyName.TechnologyName[.Feature][.Design];

Exemplo:

using ORT.Buggy;
using ORT.Buggy.Windows;
using ORT.Buggy.SerialPort;

Endereço: Av. Pedro de Castro Vandunem n.º 9, Edifício Valência, 1º Andar, Porta Direita. Mundo Verde, Luanda - Angola
Tel.: +244 921 953 600 | +244 222 789790 | Email: geral@treinp.ao
2
Convenção de codificação em C#

d) Classes
• Um substantivo deve ser usado para nomear uma classe.
• Deve ser usado Pascal Case.
• Não deve usar nenhum tipo de prefixo para nomear a classe como C ou T.
• O caractere (_) não deve ser usado.

Exemplo:

public class Quadrado {}


public class Carro {}
public class Cliente {}
public class ClienteVIP {}
public class Factura {}

e) Parâmetros
• Nomes descritivos devem ser usados para nomes de parâmetros.
• Deve ser usada uma Camel Case.
• Os parâmetros devem ser identificados com a notação húngara

Exemplo:

public bool Existe(int intCodigo, bool blnExtended) {}


public Cliente GetByCodigo(int intCodigo, bool blnExtended) {}

f) Métodos
• Verbos ou frases com verbos devem ser usados para identificar os métodos.
• Deve ser usado Pascal Case.

Exemplo:

public void RemoveAll();


public bool Inserir();
public char GetCharAt();
public Factura GetUltimaFactura();

g) Enumerações
• Deve ser usado Pascal Case.
• A notação húngara não deve ser usada.
• O sufixo “Enum” deve ser usado nas enumerações.
• Evite alterar o tipo de dados da enumeração. Por padrão é int

Endereço: Av. Pedro de Castro Vandunem n.º 9, Edifício Valência, 1º Andar, Porta Direita. Mundo Verde, Luanda - Angola
Tel.: +244 921 953 600 | +244 222 789790 | Email: geral@treinp.ao
3
Convenção de codificação em C#

Exemplo:

public enum ClientesEnum {


Codigo,
Nome,
Ordem,
Activo
};

h) Propriedades
• Deve ser usado Pascal Case.
• A notação húngara não deve ser usada.

Exemplo:

public class Cliente {

int _intCodigo; // Por serem privados da classe (Campos), tem "_".

string _strRazaoSocial; // Por serem privados da classe (Campos), tem "_".


public int Codigo {

get {return _intCodigo;}

set {_intCodigo = value;}


}
public string RazaoSocial {

get {return _strRazaoSocial;}

set {_strRazaoSocial = value;}

}
}

i) Excepções
• Os manipuladores de eventos em .NET tendem a usar "e" como parâmetro ao
invocar o evento. Para garantir que não haja conflito com este parâmetro, usaremos
"ex" como a variável padrão do tipo Exception.

Exemplo:

private void Page_Load(object sender, System.EventArgs e){

// ...

try{
// ...

}catch(Exception ex){

MessageBox.Show(ex.Message)
}
Endereço:
} Av. Pedro de Castro Vandunem n.º 9, Edifício Valência, 1º Andar, Porta Direita. Mundo Verde, Luanda - Angola
Tel.: +244 921 953 600 | +244 222 789790 | Email: geral@treinp.ao
4
Convenção de codificação em C#

3. Notação de controles visuais


a) A definição do nome de um controlo visual é guiada pelas seguintes regras:
• Use a notação camel (Camel Case).
• Use a notação húngara por meio de um prefixo específico de acordo com o controle
visual usado.

Controlo Prefixo Exemplo


Label lbl lblNomeEmpregado
TextBox txt txtRaio
Button btn btnCalcularPerimetro
CheckBox chk chkOpcoes
RadioButton rad radMasculino
GroupBox grp grpDados
Panel pnl pnlSeccao
ComboBox cbo cboDepartamento
ListBox lst lstAlunos
DataGridView dtg dtgIngredientes
PictureBox pic picFotografia
TabControl tab tabEspecialidade
Tabela 1 - Tabela de prefixo para controlos visuais das formas mais comuns

4. Comentando o código
Os comentários devem ser usados para descrever a intenção, o algoritmo e a operação ou lógica.

O ideal seria que outra pessoa que não é o autor do comentário pudesse entender o
comportamento do método, apenas lendo o comentário do código.

a) Notição de Dereitos (Copyright Notice)


• Cada arquivo deve começar com um aviso legal (copyright notice)

Exemplo:

//-------------------------------------------------------------------
// <copyright file="Cao.cs" company="Treinp,Lda">

// Copyright (c) Treinp,Lda. All rights reserved.

// </copyright>

//-------------------------------------------------------------------

b) Comentários na documentação
• Todos os métodos devem usar o formato XML para documentação. Existem
ferramentas no Visual Studio e em terceiros para gerar documentação automática a
partir de tags XML.
• Para gerar o cabeçalho padrão da documentação, basta nos posicionar na linha
antes do início do método e pressionar o caractere “/” 3 vezes. (///)

Exemplo:

Endereço: Av. Pedro de Castro Vandunem n.º 9, Edifício Valência, 1º Andar, Porta Direita. Mundo Verde, Luanda - Angola
Tel.: +244 921 953 600 | +244 222 789790 | Email: geral@treinp.ao
5
Convenção de codificação em C#

/// <summary>

/// Aumente os Vôos do Usuário, e atualize seu nome.

/// </summary>

/// <param name="intUsuario">Codigo de Usuario</param>


/// <param name="strNome">Novo nome do Usuario.</param>

/// <returns>Retorna true em caso de que a quantidade...</returns>

public bool Incrementar(int intUsuario, string strNome) {

bool blnReturnValue = false;


// Cuerpo del Metodo
// ...

return blnReturnValue;

Endereço: Av. Pedro de Castro Vandunem n.º 9, Edifício Valência, 1º Andar, Porta Direita. Mundo Verde, Luanda - Angola
Tel.: +244 921 953 600 | +244 222 789790 | Email: geral@treinp.ao
6

Você também pode gostar