Os padroes apresentados aqui sao fruto de uma pesquisa em 2 livros e 4 sites, experiencias profissionais do autor, consenso do mercado e recomendacoes de praticas da Microsoft. Como qualquer convencao ou tecnologia, este nao e 100% correto, nao e uma verdade absoluta e nao e uma bala de prata. Sao apenas guidelines para que todos nos escrevamos bom codigo, codigo limpo e livre de bad smells e que possamos entender e melhorar os codigos uns dos outros, evoluindo como equipe. Nesse texto eu quis expressar nao somente regras de nomenclatura e codificacao, mas tambem apresentar algumas boas praticas para um codigo mais coeso e flexivel. Esses sao os padroes que adotamos na empresa onde trabalho e nao ha nenhum motivo especial para voce e sua equipe adotarem este. Os padroes de codificacao devem ser um consenso da equipe. Estes foram elaborados com ajuda de outros padroes prontos de outras empresas, unindo o que eu achei de melhor nos padroes da Microsoft e nas praticas ja consolidadas da comunidade. "E impossivel para um homem aprender aquilo que ele acha que ja sabe." - Epiteto Em se definindo e aplicando Padroes de Codificacao e Documentacao, ha um enorme ganho com facilidade de implementacao e melhorias no codigo em: Visibilidade; Portabilidade; Reaproveitamento; Reducao de tempo em: Adaptacao de novos desenvolvedores. Manutencao; Migracao; Identificacao, rastreamento e correcao de erros. Diminuicao de reescrita de codigo por falta de documentacao.Fonte: http://blog.walkeralencar.com/archives/233 Coding standards tem sido alvo de varias disciplinas, e tratado em varios livros de programacao e boas praticas. Alguns livros que abordam o tema sao livros de XP e o Codigo Limpo, ambos abordando outros aspectos do bom codigo e da disciplina dos programadores alem do aspecto dos padroes de codificacao. A propria microsoft ja fornece, em seu principal veiculo de comunicacao, msdn, os padroes de codificacao. Isso garante, por exemplo, que qualquer programador recem-contratado do mercado ja esteja hasbituado com os padroes de codificacao.https://msdn.microsoft.com/en-us/library/ff926074.aspxRecomendo a adocao deste padrao com algumas alteracoes muito comuns na comunidade. Nossas Regras A regra geral e seguir as convencoes e praticas do proprio .net framework (que foram adotadas como padrao pelo mercado) e manter a consistencia. Definicoes de casing conventions: PascalCase/UpperCamelCase - Consiste em comecar com maiuscula e usar maiuscula na inicial de cada palavra composta. Exemplo: FuncionarioMensalistaGeralmente e utilizada para nomear propriedades e campos publicas e metodos (publicos ou privados). Tambem deve ser usado para nomear constantes. camelCase - Consiste em se iniciar com minuscula e usar maiuscula para a primeira letra de cada palavra composta. Exemplo: funcionarioMensalista Geralmente sao usados em nomes de variaveis locais e propriedades privadas. Notacao Hungara Os padroes de nomenclatura da comunidade C# em geral dizem para nao confiar o tipo de uma variavel a seu nome:"Do not rely on the variable name to specify the type of the variable. It might not be correct." Isso poe por terra todo o conceito antiquado de notacao hungara. ( http://pt.wikipedia.org/wiki/Nota%C3%A7%C3%A3o_h%C3%BAngara ) Outras coisas que poe por terra a notacao hungara sao as boas praticas de se criar nomes significativos para variaveis e metodos (XP, Codigo Limpo),