Boas práticas de programação em C# .NET
Upcoming SlideShare
Loading in...5
×
 

Boas práticas de programação em C# .NET

on

  • 1,710 views

Este documento descreve boas práticas de programação na plataforma .NET. Nós iremos ver: ...

Este documento descreve boas práticas de programação na plataforma .NET. Nós iremos ver:
- Padrões C# de nomenclatura;
- Dicas para boas práticas de programação;

Qual a finalidade:
- Escrever códigos de qualidade e fácil manutenção;

Em quais situações utilizaremos estes recursos:
- No desenvolvimento de qualquer programa .NET;

Statistics

Views

Total Views
1,710
Views on SlideShare
1,704
Embed Views
6

Actions

Likes
1
Downloads
41
Comments
0

1 Embed 6

http://www.slideee.com 6

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Boas práticas de programação em C# .NET Boas práticas de programação em C# .NET Presentation Transcript

  • Fabiano Roman Beraldi Email: fabiano.beraldi@outlook.com
  • C# .NET Este documento descreve boas práticas de programação na plataforma .NET. Nós iremos ver: • Padrões C# de nomenclatura; • Dicas para boas práticas de programação; Qual a finalidade: • Escrever códigos de qualidade e fácil manutenção; Em quais situações utilizaremos estes recursos: • No desenvolvimento de qualquer programa .NET; Nota: apesar de existirem milhares de padrões, podemos dizer que nenhum deles está errado. O importante é escolher e seguir um padrão de desenvolvimento.
  • A linguagem de programação C# é case sensitive, ou seja, é sensível a letras maiúsculas e minúsculas. O compilador faz distinção entre letras com “CAIXA ALTA” e “caixa normal”. Portanto é importante nos basearmos nos padrões de nomenclatura – Naming Guide C# .Net. Os estilos de nomenclaturas que foram documento, baseiam-se nos Capitalization Styles da Microsoft. utilizados neste Nota: Os termos Pascal Casing e Camel Casing serão utilizados neste documento.
  •  Descrição: a primeira letra do identificador e primeira letra de cada palavra concatenada em maiúsculo. Use Pascal Case para: • Nome de classes e propriedades: public class Pessoa { public int Id {get; set;} public string Nome {get; set;} public string EnderecoResidencial {get; set;} } • Nome de métodos: public void RealizarVenda() { }
  •  Descrição: primeira letra minúscula e cada palavra concatenada em maiúscula. Use Camel Case para: • Nome de variáveis: int contagemTotal = 0; • Parâmetros dos métodos: private int SomarNumeros(int primeiroNumero, int segundoNumero) { int valorDaSoma = primeiroNumero + segundoNumero; return valorDaSoma; } • Use o prefixo I com Camel Case para interfaces. Ex: IEntidade;
  • • Dê um nome significativo para suas variáveis e evite abreviações: Correto: string nomeCompleto; DateTime dataDeNascimento; Incorreto: string nomComp; DateTime datNasc; • Não use caracteres simples para nomear suas variáveis, como por exemplo i, n, s, etc. Ao invés disto, use uma palavra como index, número, etc. Uma exceção, seria no uso de loops: for (i == 0; i < 10 ; i++) { }
  • • Não use underline (“_”) para variáveis locais; • Não utilize acentos ou espaços; • Variáveis booleanas deverão receber nomes que impliquem em verdadeiro ou falso: Ex.: bool existeTitulo; • Não criar nomes que podem conflitar com palavras reservadas do .NET Framework como where, string, etc. • A clareza nos nomes é essencial, isto facilitará muito uma manutenção futura no sistema; Nomenclatura para projetos do Visual Studio • Não criar itens dentro de uma Solution com o mesmo nome da Solution porque o VS não saberá quando estamos nos referindo ao rootnamespaces e poderá gerar erros;
  • Nomenclatura para projetos do Visual Studio (continuação) • Os nomes de projetos devem ser criados contendo o nome da Solução mais o nome do Projeto, exemplo: Nome da solução: - PontoDeVenda Nome dos projetos: - PontoDeVenda.DAL - PontoDeVenda.Repositorio - PontoDeVenda.Webform - PontoDeVenda.TestesUnitarios
  •  Descrição: os comentários poderão ser utilizados para identificação das funcionalidades dos métodos como também gerar documentação técnica de métodos para o sistema. • Sempre comentar os códigos gerados principalmente partes críticas ou complexas; • Os comentários devem ser no mesmo nível do código. Use o mesmo nível da endentação. Exemplo: Correto //Atribui à variável o valor da data atual DateTime dataAtual = DateTime.Now; Incorreto //Atribui à variável o valor da data atual DateTime dataAtual = DateTime.Now;
  •  Dicas: • Use TAB para indentação ao invés de espaços; • Use uma linha em branco para separar grupos lógicos. Exemplo: Correto string DigaOla (string nome) { DateTime horaAtual = DateTime.Now; string mensagem = String.Empty; string mensagemCompleta; mensagem = “Olá” + nome; mensagemCompleta = mensagem + “, a hora atual é “ + horaAtual.ToShortTimeString(); return mensagemCompleta; }
  • Dicas (continuação): Incorreto string DigaOla (string nome) { DateTime horaAtual = DateTime.Now; string mensagem = String.Empty; mensagem = “Olá” + nome; string mensagemCompleta; mensagemCompleta = mensagem + “, a hora atual é “ + horaAtual.ToShortTimeString(); return mensagemCompleta; } • Use #region para agrupar métodos ou declarações relacionados. Deste modo o código ficará mais organizado. • Mantenha as variáveis na parte superior;
  • Ao adicionar algum objeto para alguma interface de usuário (UI) que podem ser tanto web como desktop devemos observar as nomenclaturas das seguintes tabelas: • Windows Forms, WPF
  • • Windows Forms, WPF (continuação)
  • • WebPages, WebParts, WebForms
  • Referências http://www.devmedia.com.br/padroes-de-desenvolvimento-seguindo-boas-praticas-de-programacao/10751 http://devluciano.wordpress.com/2011/07/04/padres-de-nomenclaturas-naming-guide-c-net/ http://pt.wikipedia.org/wiki/Case_sensitive