Estou assistindo a um vídeo em C # sobre variáveis. O autor declara uma variável dentro de um método e nomeou-a assim: string MyName = "James";
minha pergunta é: qual convenção é recomendada pelo .Net Framework. É o revestimento de Pascal como no exemplo acima ou é uma caixa de camelo?
Respostas:
Eu não acho que exista algo como uma convenção 'oficial'. Até onde eu sei, o seguinte é considerado uma boa prática por muitos desenvolvedores experientes em C #:
PascalCase for public member variables (string MyName = "James")
camelCase for local variables (string myName = "James")
_leadingUnderscore for private member variables (string _myName = "James")
Com essa abordagem, é possível distinguir entre variáveis locais e membros públicos e privados pelo caso de sua primeira letra.
Como em qualquer convenção de codificação, isso também está sujeito a preferências pessoais. Portanto, não há resposta definitiva. Um objetivo geral deve ser manter o código o mais legível e compreensível possível.
fonte
PascalCase
, moradores recebendocamelCase
e membros privados recebendo um_leadingUnderscore
.(aParameter: string)
. Sei que parâmetros são essencialmente variáveis locais, especialmente quando passados por valor, mas geralmente é muito útil "ver" que um var é realmente transmitido como parâmetro. Existe alguma convenção em C #?private string _SomeString
. Você diria que é uma convenção? (Apenas mergulhando os dedos dos pés em c # e me perguntando sobre essas coisas).As convenções de nomenclatura do .Net Framework ( v4.5 , v1.1 ) são independentes sobre isso. Eles não especificam um padrão para nomear variáveis locais. Você terá que decidir sobre sua própria convenção para nomeá-los.
Eu pessoalmente uso camelCase e desambiguo variáveis de membros de nomes de parâmetros
this
quando necessário. Mas os sublinhados iniciais (ie_memberVariable
) também são válidos.fonte
this
para distinguir variáveis locais de campos / propriedades. 5 letras adicionais a cada vez é demais.