3. Nomenclatura - Tecprog-voID/voID GitHub Wiki
Índice
- 3.1 Classes e Enums
- 3.2 Atributos
- 3.3 Métodos, Funções
- 3.4 Variáveis
- 3.5 Namespaces
- 3.6 Constantes e Macros
- 3.7 Structs
- 3.8 Ponteiros
3.1 Classes e Enums
A Nomenclatura deve seguir o padrão "CamelCase" para Classes e Enums. Nomes de classes devem ser compostos por ao menos um substantivo.
Exemplo:
class CentralLightScript
3.2 Atributos
Para atributos, o padrão adotado deve ser o "lowerCamelCase". Para atributos privados é adotado o prefixo “m_” (member) antes do nome da variável.
Exemplo:
bool m_horizontalFlip = false;
bool m_verticalFlip = false;
double m_rotation = 0;
3.3 Métodos, Funções
Para métodos e funções, o padrão usado deve ser o "CamelCase". Métodos e Funções devem conter pelo menos um verbo e um substantivo, e não possuem espaço.
public:
void FixedComponentUpdate() override;
void Start() override;
3.4 Variáveis
Para variáveis, o padrão usado deve ser o "lowerCamelCase".
int number;
3.5 Namespaces
Para namespaces, o padrão usado deve ser o "snake_case".
using namespace std;
3.6 Constantes e Macros
Para constantes e macros deverá ser usado o "SCREAMING_SNAKE_CASE" com dois underlines antes e após o nome das variáveis, exceto em parâmetros que deve ser adotado o estilo "snake_case".
Exemplo: identificador de importação de bibliotecas padrão para constantes
#ifndef __SHAPES__
#define __SHAPES__
3.7 Structs
Em structs será usado "snake_case" e o mesmo deverá ser acompanhado de um typedef
.
Exemplo:
typedef struct {
float x, y;
float radius;
} Circle;
3.8 Ponteiros
Na declaração de ponteiros, deve-se usar o asterisco junto ao nome da variável, e deve seguir o modelo "snake_case".
Exemplo:
Image *m_image = nullptr;
Vector *m_position = nullptr;