SonarLint: Seu código com mais qualidade
Uma ferramenta importante para seu dia-a-dia
Precisão, economia e pontualidade podem ser razões difíceis de defender dentro do seu time. Muitas vezes os mesmos erros ocorrem, gerando retrabalho e aumento do custo financeiro do projeto. O resultado disso é um problemão!
De acordo com a Regra de número 10, do livro “The Art of Software Testing” (Meyers,1979):
“Quanto mais cedo se descobre e corrige um erro, menor é seu custo para o desenvolvimento de uma aplicação”.
Onde queremos chegar?
O Code Review identifica coisas que as ferramentas de análise estática não são capazes de detectar, por exemplo, quando o programador entendeu errado os requisitos, quando o programador deixou de fora algo importante, trocou divisão por multiplicação, dentre outros. Aliar tal prática com uma ferramenta de análise estática irão garantir precisão, economia e pontualidade em seu projeto.
O SonarLint é uma extensão IDE que ajuda a detectar e corrigir problemas de qualidade ao escrever código. Como um corretor ortográfico, ele identifica o uso incorreto da linguagem e identifica também inconsistências de codificação. Além disso, o linter checa boas práticas, falhas de estruturação e te mostra sugestões atualizadas para os problemas encontrados.
“Particularmente acho um plugin perfeito para code review e um linter maneiro para fazer análise estática!”
Então, o que é um linter?
Segundo a Wikipedia:
“É uma ferramenta que analisa o código-fonte para sinalizar erros de programação, bugs, erros estilísticos e construções suspeitas.”
Ele pode ser baixado e instalado direto na sua IDE, no meu caso uso no Intellij IDEA.
Conheci o que são análise estática e linters durante uma das aulas do curso do Júlio de Lima(#TSPI). Fiquei curioso, pesquisei algum linter que pudesse utilizar na IDE que uso (IntelliJ IDEA) e conheci o SonarLint.
Me apaixonei pelo plugin durante uma experiência onde estava revisando o código de uma aplicação que criei para estudar testes mobile. Quero compartilhar com vocês como esse linter pode te ajudar no dia-a-dia e como é simples a sua instalação. Ele ainda gera um relatório de todo o projeto para você, maneiro né?!
Vamos Instalar esse cara ?
No IntelliJ IDEA, clique em file, na guia superior da IDE e em seguida clique em Settings.
Após os passos anteriores, selecione a opção Plugins, no campo de busca digite Sonarlint e em seguida clique em Instalar.
Para finalizar a instalação é necessário reiniciar a IDE.
Usando o Linter
Clique com o botão direito em uma classe que queira realizar a utilização do linter, depois selecione as opções SonarLint e Analise SonarLint, respectivamente.
O SonarLint irá analisar o código e dará um feedback, visível na parte inferior da IDE. Nesse feedback o linter mostrará quais inconsistências foram encontradas e irá sugerir formas de resolver as falhas.
E se eu te disser que esse cara ainda tem o serviço em Cloud?
O SonarCloud é um serviço em nuvem oferecido pelo SonarSource e baseado no SonarQube. O SonarQube é uma plataforma de código aberto amplamente adotada para inspecionar continuamente a qualidade do código-fonte, detectar bugs e vulnerabilidades. Além disso, a plataforma está disponível em mais de vinte idiomas diferentes.
Configurando SonarCloud em um projeto
Acesse o site https://sonarcloud.io/ e cadastre-se com a sua conta do GitHub.
Após o cadastro, clique na opção My account, depois em security e em seguida crie um novo token. Sugiro criar com o nome do seu projeto para facilitar a associação do serviço com o seu repositório.
Feito isso, configure sua IDE para utilizar o SonarCould da seguinte forma:
Clique em File, Settings, Tools e SonarLint, respectivamente. Em seguida, marque a opção “Automatically Trigger Analysis”, em seguida, adicione uma nova conexão.
Após os passos anteriores, dê um nome para a nova conexão no campo “Configuration Name”, selecione a opção Sonarqube e preencha-a com o endereço https://sonarcloud.io em seu respectivo campo. Clique em next.
Selecione Token para a opção Authentication Type e preencha o campo do token com o que foi criado no site SonarCloud. Clique em Next.
Por fim, clique em finish.
Agora vamos configurar o SonarLint para o Projeto:
Clique em File, Setting, Tools, SonarLint e Project Settings, respectivamente. Marque a opção “Bind project to SonarQube/SonarCloud”.
No campo connection, selecione a conexão que criou anteriormente. Em seguida, clique em Search in list e selecione o seu projeto. Quando finalizar, clique em OK.
Pronto, seu projeto está configurado!
O SonarCloud te traz as linhas que podem ser corrigidas, te ajudando a fazer um code review com mais qualidade.
Sempre que você fizer um commit em seu projeto, o SonarCloud analisará automaticamente todo o código e irá gerar ou atualizar os relatórios. Você pode encontrar os dados gerados na seção “meus projetos” da pagina inicial do SonarCloud. Selecione o projeto e será aberta a tela abaixo.
Next up…
Com a utilização das práticas de code review alinhados ao uso de linters, problemas de prazo que tem como causa raiz o retrabalho são evitados, o que diminui também o custo do projeto.
Além disso, o SonarLint me ajudou bastante me mostrando algumas inconsistências e me dando algumas sugestões de melhoria no código.
Vocês usam algum Linter para fazer análise estática ou code review ? Usam ou gostariam de usar SonarLint ou SonarCloud ? Deixem nos comentários !!!
É isso ai galera se divirtam com essa ferramenta massa, e deem mais qualidade ao seus projetos!
Referências
Funcionalidade: Referênciar o que me ajudou a escrever esse artigo.
Cenário: Referências do meu primeiro artigo.
Dado que Júlio de Lima - #TSPI #LinkedIn me incentiva a escrever
Quando Leio Lars Vogel - Using SonarLint and SonarQube
E Documentação do SonarLint
E Conviso - Análise estática substitui a revisão de código?
E Gabriel Santos revisa com Excelência
Então meu primeiro artigo é publicado !