SonarLint Feat Visual Studio Code

10/12/2019

Aucun commentaire

Je fais suite à mon article portant sur la qualité de code avec SonarQube. Dans ce post, je mets en évidence un outil très utile pour suivre la qualité du code en temps réel dans votre éditeur de code : SonarLint.
Pour ma part, j’utilise
Visual Studio Code.

sonarlint-logo

Prérequis

Vous devez disposer d’une Java Runtime (JRE) 8 ou 11 sur votre machine.

Qu’est-ce que SonarLint ?

SonarLint est une extension que vous pouvez ajouter à un IDE tel que Visual Studio. Cette solution apporte des commentaires en temps réel aux développeurs sur la qualité de leur code. Vous serez donc capable de détecter des problèmes en quelques secondes et ainsi améliorer votre productivité.

SonarSource (fondateur de l’écosystème Sonar) décrit SonarLint comme une fonctionnalité. Elle peut fonctionner comme un correcteur orthographique pour le texte. Elle peut en effet détecter les éventuels problèmes liés à votre code, et ce au fur et à mesure que vous codez.

L’avantage de ce petit outil est qu’il vous évite de devoir attendre la réponse de votre instance SonarQube une fois que vous avez commit et d’attendre le build de votre pipeline DevOps (dans un cas d’intégration continue).
Ainsi, SonarLint fournit une meilleure alternative pour vérifier la qualité du code
rapidement puisqu’il s’intègre directement à VS Code.

Dans cet article, nous verrons comment activer l’extension SonarLint dans VS Code afin d’obtenir des commentaires en temps réel sur la qualité de votre code. Vous pouvez également “connecter” votre extension à une instance en cours d’exécution de SonarQube sur un serveur si vous en disposez d’une.

Ajouter SonarLint dans Visual Studio Code

Pour information, j’utilise actuellement la version 1.40.2 de VS Code à l’heure où j’écris ces lignes. Dans VS Code, SonarLint est une extension qui peut être installée de la façon suivante :

Affichage > Extensions > saisissez dans la barre de recherche “SonarLint” > Install

sonarlint-screen-1

Vous devez maintenant vous déconnecter de VS Code pour que les modifications soient enregistrées correctement. Dès lors, vous serez en mesure d’utiliser SonarLint pour votre projet.

Analysez votre code

Un linter mettra en surbrillance votre code si des anomalies sont détectées et ce en temps réel :

sonarlint-screen-2

Vous pouvez alors gérer vos règles en fonction de votre langage de programmation, utiliser le mode connecté avec votre instance SonarQube, etc :

sonarlint-screen-3

Pour plus d’explications, je vous laisse regarder plus en détails les détails de l’extension au moment d’installer l’extension dans votre VS Code.

Conclusion

Comme nous avons pu le voir, SonarLint détectera les problèmes de code sur un IDE tel que Visual Studio. Cependant, gardez à l’esprit qu’il est utile sur des parties “syntaxiques”, sur du code inutile et sur des règles de codage non respectées. Mais il ne pourra intervenir sur votre logique métier ; il ne détectera pas de problèmes lorsque votre code est intégré à d’autres éléments du projet. 

Ainsi, il est tout de même recommandé de disposer d’une instance de SonarQube à côté dans l’étape d’intégration continue pour garantir que le code sniffé et les problèmes de code sont bien détectés lors de chaque commit, et ainsi augmenter votre qualité dans un contexte où plusieurs personnes interviennent sur le projet. Cela vous aidera grandement à homogénéiser vos livrables. 

Pour un code propre et encadré, il est donc important d’avoir d’un côté SonarLint d’installé sur chaque poste développeur (pour effectuer une pré-analyse du code en local) et d’avoir une pipeline DevOps efficace reliée à une instance SonarQube pour checker les éventuels problèmes du projet dans son ensemble (pour effectuer une post-analyse du code en remote).