Mudanças entre as edições de "Boas Praticas Programacao"
(→Comentários no código) |
(→Comentários no código) |
||
Linha 109: | Linha 109: | ||
*Para parâmetros ou métodos auto explicativos. | *Para parâmetros ou métodos auto explicativos. | ||
<code>// Nome </code> | <code>// Nome </code> | ||
+ | |||
<code>string nome;</code> | <code>string nome;</code> | ||
Edição das 17h20min de 13 de julho de 2016
Esta página serve com uma referência para a convenção de código e consulta para eventuais divergências entre modelos adotados na MSTECH.
Índice
Utilizando camelCasing e PascalCasing
Os projetos em .Net na MSTECH devem adotar o padrão de maiúsculas criados pela equipe da Microsoft.
camelCasing
O camelCasing consiste em tornar maiúscula todas as primeiras letras das palavras com exceção da primeira palavra.
EX: camelCasing, existeTitulo, idEscola ...
Utilize este padrão para variáveis e parâmetros. Quando a variável ou parâmetro possuir um acrônimo, utilizar as duas primeiras letras também minusculas.
PascalCasing
O PascalCasing consiste em tornar maiúscula toda primeira letra das palavras.
Ex: SalvarUsuario() e LoginExterno ...
Utilize este padrão para nome de métodos e propriedades de uma entidade.
Exemplos
Identificador | Caso | Exemplo |
---|---|---|
Namespace | Pascal | namespace System.Security { ... }
|
Tipo | Pascal | public class StreamReader {...}
|
Interface | Pascal | public interface IEnumerable {...}
|
Método | Pascal | public class Object{ public virtual Length{ get; } }
|
Propriedade | 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 do Enum | Pascal | public enum FileMode { Append,...}
|
Parâmetro | Camel | public static int ToInt32(string value);
|
Criação de nomes
O objetivo é normalizar a criação de nomes para variáveis, tipos, métodos...
Regras gerais
- O projeto deve ser desenvolvido utilizando uma linguagem ubiquá.
- Crie variáveis e métodos com nomes claros e não extensos.
- Não utilize nomes genéricos. Exemplo:
var teste;
- Não utilize acentos nos nomes.
- Evite criar nomes que denotem negação. Exemplo:
bool usuarioNaoInscrito = true; if(!usuarioNaoInscrito){...}
Variáveis
- Utilize camelCasing.
- Recomendado o uso de plural para variáveis que armazenem coleções.
- Recomendado a utilização de sufixos para booleanos. Exemplo :
bool emEdicao = false;
Métodos, classes e interfaces
- Utilize PascalCasing.
- Utilize o prefixo I para Interfaces.
Comentário
Os comentários em código devem ser mínimos. O seu próprio código deve ser auto descritivo. Quando nos deparamos com um código que precisa de muito comentário para explicar o seu funcionamento, reveja a forma como está a lógica deste código, tente separar em partes menores, com métodos que possuam nomes claros, inteligíveis e que executem ações específicas.
Os comentários devem sofrer manutenção assim como o código, para que eles não atrapalhem um novo membro da equipe a entender o que está ocorrendo no código.
"Não insira comentários num código ruim, reescreva-o" Brian Kernighan e P.J. Plaugher.
Comentários no código
Boa prática:
- Comentário em parâmetros retornados por programas externos (API's, por exemplo).
- Destacar a utilização de um método importante que pode parecer desnecessário.
- TODO: Existem casos onde adicionar comentários TODO facilitem a revisões de código.
Evite:
- Comentar trechos de código: Deixe que o versionamento de código faça isto por você.
/* não apague!!!!!! */
- Para parâmetros ou métodos auto explicativos.
// Nome
string nome;
- Explicações desnecessárias.
// Esta é melhor solução que o Fulano tentou, não sei se ele pesquisou a página XYZ.com