Desde que não podemos definir uma variável como fruits in basket
porque muitas (ou talvez todas) linguagens de programação irão interpretar o carácter espacial como o fim do identificador e o início de algo mais, precisamos de fazer algo como fruitsInBasket
.
Camelo, pascal, kebab e caixa de cobra (e outras) são todas convenções de nomenclatura que utilizamos na programação de computadores para podermos criar nomes compostos para variáveis, tipos, funções, clases e outras estruturas no código fonte.
camelCase
As regras são que capitalizamos todas as palavras após a primeira.
Raw | camelCase |
---|---|
frutas no cesto | frutasInBasket |
has error | hasError |
A caixa de camelo é normalmente usada para variáveis e funções em JavaScript.
PascalCase
Aqui precisamos de capitalizar todas as palavras incluindo a primeira.
Raw | camelCase | PascalCase |
---|---|---|
frutas no cesto | frutasInBasket | frutasInBasket |
has error | hasError | HasError |
é visível | isVisible | IsVisible |
PascalCase é frequentemente preferido pelos programadores C.
kebab-case
Para esta, adicionamos um traço entre cada palavra e todas elas são minúsculas.
Raw | camelCase | PascalCase | kebab-case | |
---|---|---|---|---|
frutas no cesto | frutasInBasket | frutasInBasket | frutasInBasket | frutas-em-cesto |
erro | hasError | HasError | has-error | IsVisible | is-visible |
atributos HTML5 podem começar com data-
como data-name
. Além disso, CSS usa traços em nomes de propriedades como background-color.
snake_case
Em contraste com a caixa de kebab, para a caixa de cobra adicionamos um sublinhado em vez disso.
Raw | camelCase | PascalCase | kebab-case | snake_case | |
---|---|---|---|---|---|
frutas no cesto | frutasInBasket | frutasInBasket | frutasInBasket | frutas-em-cesto | frutas_no_cesto |
has error | hasError | HasError | has-error | has_error | |
IsVisível | is-visible | is_visible |
Muitos programadores usam sublinhados especialmente em bases de dados SQL para coisas como creation_date
company_name
, etc.
alguns benefícios que as convenções de nomeação trazem:
- Consistência. Uma vez que nomear algo é uma das tarefas mais difíceis de um programador, pelo menos podemos concordar numa convenção e ser consistentes sobre ela.
- Melhor compreensão. Nomes compostos explicam muito melhor do que uma palavra ou um carácter a finalidade da estrutura.
- Capacidade de leitura. Aumenta a capacidade de leitura do código.
- Automatização. Permite a utilização de refactoring automatizado e ferramentas de pesquisa e substituição.