Se você está iniciando agora no mundo do desenvolvimento de software, provavelmente já deve ter a sua IDE escolhida e devidamente instalada, certo? Caso não tenha ainda (e talvez nem saiba o que é e para que serve), dá uma olhada nesse artigo introdutório aqui e também em algumas opções para Java aqui.
Com sua IDE já à postos, chegou a hora de conhecer um plugin que é muito útil e até, eu diria, essencial para nos auxiliar a escrever código com qualidade - o Sonarlint.
A grande vantagem dessa ferramenta é que ela nos ajuda a ver e a corrigir pontos negativos que talvez nem saibamos ainda que estão habitando nosso código: como possíveis bugs, nullpointers, condições desnecessárias e tudo aquilo que pode gerar códigos mal escritos e com problemas de qualidade.
Outra boa notícia acerca do Sonarlint, é que ele pode ser utilizado nas mais famosas IDE's, como por exemplo, Eclipse, IntelliJ e VS Code. E também, ele não está restrito a linguagem Java (minha queridinha 💘 ), mas também trabalha com Javascript, Python, Kotlyn, Ruby, Php, C#, dependendo da IDE escolhida.
A instalação é muito simples e rápida:
No Eclipse, basta ir no menu Help e Eclipse Marketplace. Buscar "Sonarlint" e clicar em "Install".
No IntelliJ, vá em "File", "Settings", "Plugins" e busque por Sonarlint e clique em "Install".
Nos dois casos, será necessário reiniciar a IDE para a alteração ser aplicada e o plugin funcionar efetivamente.
O Sonarlint é um detector, em tempo real, de códigos fedidos - que geram dificuldades de manutenção (leia mais aqui - em inglês), bugs 🐛 e vulnerabilidades. Para essas categorias, temos também o nível de severidade dos problemas, que são: Minor, Major, Critical e Blocker.
Em seu trabalho, o Sonarlint, sinaliza o trecho de código a ser corrigido/melhorado e ainda fornece uma explicação para o problema e como corrigí-lo, mostrando exemplos de código que não estão em conformidade com a regra e o exemplo de código em conformidade, isto é, a forma mais adequada de escrever aquele trecho. Mas são apenas sugestões, e não segui-las não quer dizer que seu código não irá funcionar da mesma forma.
Vamos ver um exemplo abaixo:
- Nesse caso, temos um teste que tem a intenção de validar se dois nomes (do tipo String) são iguais. Porém, estou usando para comparar o firstName e o secondName o operador de igualdade
==
. Nesse exemplo, meu teste não está passando, mesmo com os dois nomes tendo valores iguais. 😞 O que pode estar acontecendo???
Imediatamente, o Sonarlint me alerta que algo errado não está certo!
Logo abaixo, na aba do Sonarlint, temos mais informações: Ele me mostra uma breve descrição da regra, com o seu tipo, que nesse caso seria um "bug" e com o nível de severidade "Major". (Caso não esteja visualizando a aba do Sonarlint, você pode acessá-la no IntelliJ indo no menu "View", "Tool Windows", "Sonarlint". E no Eclipse, no menu "Window", "Show view", "Other...", "Sonarlint").
E por fim, a cereja do bolo 🍒🍰: A forma de como corrigir esse código, com um exemplo que não causaria mais bugs.
Então, me aproveitando dessa dica do Sonarlint, vou corrigir meu código, sendo o resultado final este:
Além desse exemplo acima, o Sonarlint dá muitas dicas para deixar seu código sem bugs, mais legível e com qualidade. Se quiser uma lista completa das regras que ele aponta, clica aqui.
Esse plugin é ou não é maravigold?!🧙♀️
Top comments (0)