Padrões de Código
ESLint, Prettier, Editor Config
Manter um padrão de código consistente é uma parte importante do desenvolvimento de software. Isso ajuda a melhorar a legibilidade, a manutenibilidade e a colaboração entre os membros da equipe. No entanto, manter manualmente um padrão de código pode ser um desafio, especialmente em projetos grandes e em equipes maiores. Para ajudar nessa tarefa, existem ferramentas como o ESLint, Prettier e Editor Config que automatizam a tarefa de manter um padrão de código consistente.
ESLint
O ESLint é uma ferramenta de análise de código estática que ajuda a identificar e corrigir problemas no código JavaScript. Ele verifica o código em busca de erros, padrões não recomendados e outros problemas. O ESLint pode ser personalizado para atender às necessidades específicas do projeto, permitindo que você defina suas próprias regras. O ESLint pode ser integrado aos editores de código e sistemas de controle de versão, permitindo que as regras sejam aplicadas automaticamente sempre que o código for salvo.
Prettier
O Prettier é uma ferramenta que ajuda a formatar automaticamente o código. Ele pode ser usado com uma variedade de linguagens de programação, incluindo JavaScript, CSS, HTML e muito mais. O Prettier ajuda a manter um padrão de código consistente, independentemente do estilo de codificação dos desenvolvedores individuais. Ele pode ser integrado aos editores de código e sistemas de controle de versão, permitindo que o código seja formatado automaticamente sempre que for salvo.
Editor Config
O Editor Config é uma especificação que ajuda a manter um padrão de código consistente em diferentes editores de código e sistemas de controle de versão. Ele define regras de formatação básicas, como espaços em branco, codificação de caracteres e quebras de linha, que podem ser compartilhadas entre os membros da equipe e aplicadas automaticamente sempre que o código é salvo. O Editor Config pode ser usado com uma variedade de linguagens de programação e editores de código.
Conclusão
Manter um padrão de código consistente é importante para o sucesso do desenvolvimento de software. Ferramentas como o ESLint, Prettier e Editor Config ajudam a automatizar a tarefa de manter um padrão de código e garantir que o código seja legível, manutenível e colaborativo. Cada ferramenta tem sua própria finalidade, mas juntas, elas ajudam a manter um padrão de código consistente em todo o projeto.
Configuração
ESLint
"rules": {
// Evita reatribuição de variáveis.
"prefer-const": "error",
// Detecta variáveis não utilizadas no código.
"@typescript-eslint/no-unused-vars": "error",
// Desaprova o uso do tipo "any" em TypeScript.
"@typescript-eslint/no-explicit-any": "error"
}
A primeira regra,
prefer-const, ajuda a evitar o uso de variáveis que são reatribuídas depois de declaradas. Em vez disso, ela sugere o uso de constantes sempre que possível, que não podem ser reatribuídas após a sua declaração. Isso ajuda a tornar o código mais legível e menos propenso a erros.A segunda regra,
@typescript-eslint/no-unused-vars, ajuda a identificar e evitar a declaração de variáveis que não são utilizadas no código. Essas variáveis são frequentemente uma indicação de código desnecessário ou código que precisa ser refatorado.A terceira regra,
@typescript-eslint/no-explicit-any, ajuda a evitar o uso da palavra-chaveanyem TypeScript.anyé uma palavra-chave genérica que pode ser usada como um tipo para variáveis, funções ou parâmetros, mas ela pode levar a código inseguro e difícil de manter. Essa regra força a utilização de tipos mais precisos e seguros.
Prettier
{
"semi": true,
"trailingComma": "es5",
"singleQuote": true,
"tabWidth": 4,
"useTabs": true
}
semi“true” especifica que o código deve incluir ponto e vírgula no final de cada linha.trailingComma""es5" especifica que as listas de elementos, como objetos e arrays, devem incluir uma vírgula após o último elemento, seguindo o padrão definido na especificação ECMAScript 5.singleQuotetrue especifica que o código deve usar aspas simples para strings, em vez de aspas duplas.tabWidth4 especifica a largura do tabulador, definindo o número de espaços equivalentes a um caractere de tabulação.useTabstrue especifica que o código deve usar tabs em vez de espaços para indentação.
Editor Config
root = true
[*]
indent_style = space
indent_size = 4
end_of_line = crlf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
end_of_line = lf
root = truedefine a configuração como a raiz do projeto.[*]define as regras para todos os tipos de arquivo.indent_style = spaceespecifica que a indentação deve ser feita com espaços em vez de tabs.indent_size = 4especifica o número de espaços que deve ser usado para cada nível de indentação.end_of_line = crlfespecifica que o fim de linha deve ser do tipo CRLF.charset = utf-8especifica que a codificação do arquivo deve ser UTF-8.trim_trailing_whitespace = trueespecifica que os espaços em branco no final das linhas devem ser removidos automaticamente.insert_final_newline = trueespecifica que uma nova linha deve ser adicionada automaticamente no final do arquivo.end_of_line = lfespecifica que o fim de linha deve ser do tipo LF.