Mudanças entre as edições de "Guidelines de Implementação"

De LCAD
Ir para: navegação, pesquisa
Linha 16: Linha 16:
  
 
     <font color=#007A00> #define</font> TABLE_WIDTH <font color=#7A0000>90</font>
 
     <font color=#007A00> #define</font> TABLE_WIDTH <font color=#7A0000>90</font>
 +
 +
== Comentários ==
 +
Programas podem ter dois tipos de comentários: de implementação e de documentação. Comentários de implementação são aqueles encontrados em C++, delimitados por /*...*/ e //. Comentários de documentação ( “semelhantes à javadoc”) têm significado especial e são delimitados por /**...*/. Os comentários de documentação deverão ser aplicados somente às funções e métodos e serão processados pela ferramenta [http://www.stack.nl/~dimitri/doxygen/index.html Doxygen]. Esse tipo de comentário deverá seguir as seguintes regras:
 +
*Apresentar uma descrição breve do método, sendo que o ponto (“.”) deve obrigatoriamente terminar a sentença.
 +
*Se necessário, apresentar uma descrição mais detalhada após a descrição breve, que também deverá ser terminada com o ponto final (“.”)
 +
*Descrever os parâmetros.
 +
*Descrever qual será o retorno da função.
 +
 +
Exemplo:
 +
  /**
 +
      * Descrição breve do método (obrigatoriamente tem que terminar com um ponto).
 +
      * Caso seja necessário uma descrição mais detalhada essa deverá ser escrita
 +
      * após a descrição breve .\  Se for  preciso colocar um ponto no meio da descrição,
 +
      * ele deverá preceder uma contra-barra seguida de espaço(“\ “) \.  Após a
 +
      * descrição detalhada encerrar com um ponto.
 +
     
 +
      * @param inss um float representando o inss 
 +
      * @param quantidade_anos inteiro representando a quantidade de anos
 +
      * contribuídos
 +
      * @return um float representando o valor total contribuído durante a quantidade
 +
      * de anos informada
 +
      */
 +
 +
 +
Nota: informações sobre as [http://pt.wikipedia.org/wiki/Tag_(programação) tags] podem ser obtidas em http://www.stack.nl/~dimitri/doxygen/commands.html
 +
 +
 +
Comentários de implementação devem ser usados para :
 +
* Desativar trechos de código
 +
* Inserir informações a respeito da implementação particular. Neste caso:
 +
** Eles devem complementar o código fonte, explicando o que não é óbvio.
 +
**Eles devem ajudar o leitor a compreender a fundo os conceitos, as dependências e, sobretudo, a codificação de dados complexos ou algoritmos.
 +
**Devem destacar: desvios de codificação ou padrões de design; o uso de features restritas e "truques" especiais.
 +
 +
Como regra geral, antes de inserir um comentário de implementação, responda à seguinte questão: <font color=#0000FF>Qual o valor que está sendo adicionado neste comentário? </font>
 +
 +
Comentários de documentação devem descrever a especificação do código, de uma perspectiva independente da implementação e para ser lido por desenvolvedores que não necessariamente terão o código-fonte em mãos.
 +
 +
Dados de alteração de código devem ser comentados em [http://www.lcad.inf.ufes.br/wiki/index.php/Releases_liberadas Releases Liberadas do SCAE] no momento em que as releases forem atualizadas no repositório.

Edição das 15h42min de 19 de fevereiro de 2009

Introdução

Este documento estabelece o padrão de codificação de códigos-fonte para o projeto SCAE.

Regra Número 1

Quando você não puder encontrar uma orientação ou uma regra que se aplique ao seu caso; ou ainda, quando uma regra não se aplicar, ou mais obviamente, ou quando tudo falhar: use o senso comum e verifique os princípios fundamentais. Esta regra prevalece sobre todas as outras. O senso comum é necessário mesmo quando existem regras e orientações.

Variáveis

Os nomes das variáveis devem obedecer às seguintes regras:

  • Todas as variáveis devem ser declaradas no início da função.
  • Todas as letras devem ser minúsculas, sendo que as palavras são separadas por underscore (_);
  • O nome da variável tem que ser o mais claro possível. Abreviações não devem ser utilizadas;
  • Nomes de variáveis globais devem ser precedidas da letra “g” em minúsculo e undercore (ex: g_line_number ).

Constantes

Os nomes das constantes de classe devem ser todos em maiúsculas, com palavras separadas por underscore (“_”).Exemplo:

    #define TABLE_WIDTH 90

Comentários

Programas podem ter dois tipos de comentários: de implementação e de documentação. Comentários de implementação são aqueles encontrados em C++, delimitados por /*...*/ e //. Comentários de documentação ( “semelhantes à javadoc”) têm significado especial e são delimitados por /**...*/. Os comentários de documentação deverão ser aplicados somente às funções e métodos e serão processados pela ferramenta Doxygen. Esse tipo de comentário deverá seguir as seguintes regras:

  • Apresentar uma descrição breve do método, sendo que o ponto (“.”) deve obrigatoriamente terminar a sentença.
  • Se necessário, apresentar uma descrição mais detalhada após a descrição breve, que também deverá ser terminada com o ponto final (“.”)
  • Descrever os parâmetros.
  • Descrever qual será o retorno da função.

Exemplo:

 /**
      * Descrição breve do método (obrigatoriamente tem que terminar com um ponto).
      * Caso seja necessário uma descrição mais detalhada essa deverá ser escrita 
      * após a descrição breve .\  Se for  preciso colocar um ponto no meio da descrição, 
      * ele deverá preceder uma contra-barra seguida de espaço(“\ “) \.  Após a 
      * descrição detalhada encerrar com um ponto.
      
      * @param inss um float representando o inss   
      * @param quantidade_anos inteiro representando a quantidade de anos 
      * contribuídos
      * @return um float representando o valor total contribuído durante a quantidade
      * de anos informada
      */


Nota: informações sobre as tags podem ser obtidas em http://www.stack.nl/~dimitri/doxygen/commands.html


Comentários de implementação devem ser usados para :

  • Desativar trechos de código
  • Inserir informações a respeito da implementação particular. Neste caso:
    • Eles devem complementar o código fonte, explicando o que não é óbvio.
    • Eles devem ajudar o leitor a compreender a fundo os conceitos, as dependências e, sobretudo, a codificação de dados complexos ou algoritmos.
    • Devem destacar: desvios de codificação ou padrões de design; o uso de features restritas e "truques" especiais.

Como regra geral, antes de inserir um comentário de implementação, responda à seguinte questão: Qual o valor que está sendo adicionado neste comentário?

Comentários de documentação devem descrever a especificação do código, de uma perspectiva independente da implementação e para ser lido por desenvolvedores que não necessariamente terão o código-fonte em mãos.

Dados de alteração de código devem ser comentados em Releases Liberadas do SCAE no momento em que as releases forem atualizadas no repositório.