Ferramentas do usuário

Ferramentas do site


c:nomes

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anteriorRevisão anterior
Próxima revisão
Revisão anterior
c:nomes [2008/04/02 17:34] laercioc:nomes [Data desconhecida] (atual) – removida - edição externa (Data desconhecida) 127.0.0.1
Linha 1: Linha 1:
-===== Padronização de Nomes ===== 
-**Padronização de nomes de arquivos, classes, estruturas, métodos, etc.** 
- 
-Na TerraLib, todos os nomes devem começar com o prefixo **"Te"** ou **"TE"** (no caso de macros), exceto nomes de métodos e membros de classes e estruturas e nomes de variáveis. Essa regra vale para nomes de arquivos, módulos e pacotes da plataforma TerraLib.\\ 
- 
- 
- 
- 
- 
- 
- 
-==== Nome de Arquivos ==== 
- 
-Preencher.... 
- 
-==== Nomes de Macros ==== 
-Usar UPPERCASE e underscores **"_"**. No caso de macros associadas a arquivos **.h**, 
-usar a extensão do arquivo como sufixo **"_H"**. \\ Exemplo: 
- 
-<code cpp> 
-#ifndef TE_CONNECTION_POOL_H 
-#define TE_CONNECTION_POOL_H 
-.... 
-#define TE_MY_DEFINE 1 
-.... 
-#endif //end TE_CONNECTION_POOL_H 
-</code> 
- 
- 
- 
- 
- 
-==== Nomes de tipos e constantes ==== 
-      * Usar UpperCamelCase para todos os nomes de classes, constantes, estruturas, enumerações e typedefs.\\ UpperCamelCase: A primeira letra de cada palavra em maiúsculas e as demais em minúsculas.  
-      * No caso de siglas, todas as letras devem ser maiúsculas. \\ Exemplo: 
-<code cpp> 
-class TePolygon; double TeMaxFloat; struct TePDIParams; typedef TeWMS;  
-</code> 
-      * Usar substantivo. 
-      * Usar o plural para nomes de coleções. \\ Exemplo: 
-<code cpp> 
-class TePolygons; class TeLines; class TeConnections;  
-</code> 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
-==== Nomes de funções e métodos ==== 
-  * Usar lowerCamelCase para todos os nomes de métodos de estruturas e de classes. 
-  * Não usar o prefixo **"Te"** para os nomes de métodos. 
-  * Usar UpperCamelCase e o prefixo **"Te"** para os nomes de funções.\\  
-  lowerCamelCase:  A primeira palavra em minúsculas e as palavras seguintes com a primeira letra em maiúsculas e as outras letras em minúsculas.\\ Exemplo: 
-<code cpp> 
-TePolygon::getBox(void)  
-TeCreateLayerFromTheme(...) 
-</code> 
-  * Usar verbos nos nomes de funções e métodos. 
-  * Usar os prefixos **“is”**, **“set”** e **“get”** quando estiver acessando membros da classe.\\ Exemplo: 
-<code cpp> 
-TePolygon::isValid(void)       // Usar para obter o valor de membros do tipo booleano 
-const TeBox& TePolygon::getBox(void)        // Usar para obter o valor de um membro da classe 
-TePolygon::setBox(TeBox& b)    // Usar pra alterar o valor de um membro da classe 
-</code> 
- 
- 
- 
- 
- 
- 
- 
- 
-==== Nomes de parâmetros e variáveis ==== 
- 
-  * lowerCamelCase para todos os nomes de parâmetros e variáveis. 
-  * Usar substantivos.  
-  * Adicionar o sufixo **“_”** nos nomes de membros de estruturas e classes. 
-  * Usar nomes para todos os parâmetros. 
-  * Usar **“other”** para nomes de parâmetros nos construtores de cópia e operadores de atribuição. 
-  * Usar os mesmos nomes dos membros nos métodos que os acessam diretamente. \\ Exemplo: 
-<code cpp> 
-class TePolygon 
-{ 
-  public: 
-    TePolygon(void); 
-    TePolygon(const TePolygon& other); 
-    TePolygon& operator=( const TePolygon& other); 
-    const TeBox& getBoundingBox(void) const; 
-    void setBoundingBox(const TeBox& boundingBox); 
- 
-  protected: 
-    TeBox boundingBox_; 
-} 
-</code> 
- 
- 
- 
- 
- 
- 
- 
- 
-==== Para todos os nomes ==== 
- 
-  * Usar nomes com significado: evitar nomes com um único caracter ou nomes genéricos. A única exceção são as variáveis temporárias como, por exemplo, as usadas como contador ou índices dentro de loops. 
-  * Usar nomes comuns ao domínio da aplicação. 
-  * Evitar o uso de dígitos nos nomes. 
-  * Evitar nomes excessivamente longos. Se o nome é muito comprido, é um sinal de que você precisa reprojetar porque o objeto está fazendo coisas demais. 
-  * Usar nomes completos, sem excluir as vogais. \\ Exemplo: 
-<code> 
-msg //Bad 
-message //Good</code> 
-  * Não usar maiúsculas/minúsculas para diferenciar nomes. 
- 
- 
- 
- 
- 
  
c/nomes.1207157698.txt.gz · Última modificação: 2008/04/02 17:34 por laercio