A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Por Celito Muck Felipetto. Introdução  Por que a padronização de código? Ela é realmente necessária?  Padronização da padronização?  Qual usar? Como.

Apresentações semelhantes


Apresentação em tema: "Por Celito Muck Felipetto. Introdução  Por que a padronização de código? Ela é realmente necessária?  Padronização da padronização?  Qual usar? Como."— Transcrição da apresentação:

1 Por Celito Muck Felipetto

2 Introdução  Por que a padronização de código? Ela é realmente necessária?  Padronização da padronização?  Qual usar? Como usar?

3

4

5 Convenção de nomenclatura  Notação Húngara  bBusy : boolean  chInitial : char  cApples : count of items  dwLightYears : double word (systems)  fBusy : boolean (flag)  nSize : integer (systems) or count (application)  iSize : integer (systems) or index (application)

6 Convenção de nomenclatura  Notação Posicional  Máximo 8 caracteres  Apenas usava mnemônicos  BUSY : boolean  WORDL : char  APPLES : int  LYEAR : double  ISVAL : boolean (flag)

7 Convenção de nomenclatura  CamelCase:  isBusy : boolean  longWord : string  apples : int  lightYear : double  varWithALongName : float  Pascal:  IsBusy : boolean  LongWord : string  Apples : int  Light Year : double  VarWithALongName : float

8 Convenção de nomenclatura  Underscore & Hyphen (UPPER or lower)  is_busy : boolean  long_word : string  NUM_APPLES : int  _light_year : double  first-letter : char  VAR-WITH-A-VERY-LONG-NAME : float

9 Convenção de nomenclatura  Padrão C#: EstruturaNomenclaturaExemplo ClassePascal PessoaFisica Interface‘I’ + Pascal IProgramador Método public, Propriedades Pascal NomeCompleto() Método privateCamel Case calculaIdade() Variável Public & ProtectedPascal PrimeiroNome Variável PrivateCamel Case salarioInicial ConstantesUppercase Underscored PISO_SALARIAL

10 Convenção de nomenclatura  Padrão alternativo: EstruturaNomenclaturaExemplo ClassePascal PessoaFisica Interface‘I’ + Pascal IProgramador Método public, Propriedades Camel Case nomeCompleto() Método privateCamel Case calculaIdade() Variavel Public & ProtectedCamel Case primeiroNome Variavel Private‘_’ + Camel Case _salarioAtual ConstantesUppercase Underscored PISO_SALARIAL

11 Indentação  Tabulação != 3 Espaços  Fontes Monospaced  Namespace não tem indentação  Limite da linha

12 Indentação  Função quebrada:  Caso 1:  nomeCompleto = metodoQueCaptaONome...  nomeCompleto = metodoQueCaptaONome();  Caso 2 :  metodoMuitoComprido(metodoMuitoCom...  metodoMuitoComprido( metodoMuitoComprido());

13 Indentação  Inicio de Bloco  Mesma linha  public void NomeDaFunção(){... }  Próxima linha (MS)  public void NomeDaFunção() {... }

14 Idioma  Escopo do projeto  Equipe de programação  Mistura de idiomas

15 Documentação  Importancia da documentação  O que documentar?  C#  XML Doc  Comentários com Tags

16 Documentação  Tags:  = Descrição da estrutura que segue  = Descrição do parametro  = Descrição do retorno  = Delimita codigo na documentação  = Referencia um membro externo  = Exemplifica a documentação

17 Documentação  Exemplo : /// /// Retorna o nome completo da Pessoa /// /// Tratamento a ser adicionado /// antes do nome /// /// Esse exemplo mostra como pode ser /// usado o metodo. /// /// class ClasseTeste /// { /// static int Main() /// { /// NomeCompleto(false); /// } /// public string NomeCompleto(string tratamento) { … }

18 Repositório de código  SVN  Repositório centralizado  Bom para pequenos grupos  GIT  Repositórios hierarquicos  Bom para projetos complexos

19 TODO  O que é o TODO?  //TODO: Adicionar sons ao personagem;  Necessidade do TODO  TODO direcionado  //TODO: [João] Fazer conexão com BD;  Sistemas mais completos:  Redmine;  Jira;  Trac;  FogBugz

20 Fontes  MSDN: Microsoft Developer Network (msdn.microsoft.com)  Naming convention (programming): Wikipedia (en.wikipedia.org/wiki/Naming_convention_(programing))  Google...


Carregar ppt "Por Celito Muck Felipetto. Introdução  Por que a padronização de código? Ela é realmente necessária?  Padronização da padronização?  Qual usar? Como."

Apresentações semelhantes


Anúncios Google