Selon des sondages, un développeur Java sur quatre utilise Visual Studio Code (VS Code), l'IDE gratuit et multiplateforme de Microsoft qui est récemment devenu un IDE Java plus complet. De nouveaux écrans d'accueil et de configuration facilitent la configuration du projet, de nouvelles vues de projet et de hiérarchie facilitent la navigation dans le code, les améliorations de la qualité de vie permettent de gagner du temps de codage et le framework Spring et le service cloud Azure de Microsoft sont désormais mieux intégrés.
VS Code est membre de la famille des IDE Visual Studio de Microsoft, avec Visual Studio pour Windows et Visual Studio pour Mac. Microsoft a revendiqué 14 millions d'utilisateurs pour VS Code en février dernier,contre 9 millions en 2020 et 2,6 millions au fin 2017. Il y a environ 8 millions de développeurs Java.
Deux enquêtes importantes font état de la part de marché des IDE Java. Le 2021 Java Technology Report de JRebel (876 réponses en août - novembre 2020) a attribué à VS Code 27% de part de marché, IntelliJ IDEA 65% et Eclipse IDE 48%. Le JVM Ecosystem Report 2021 de Snyk (plus de 2 000 réponses de février à mars 2021) a fixé la part de marché de VS Code à 23%, IntelliJ IDEA à 72% et Eclipse à 25%. Les deux rapports ont permis de multiples réponses à cette question. Snyk a également constaté qu'un développeur sur deux utilise plus d'un IDE et qu'un développeur sur quatre utilise quatre IDE ou plus.
L'extension Java Extension Pack contient la fonctionnalité de base de l'IDE Java pour VS Code. Une vidéo récente sur la chaîne YouTube Microsoft Developer détaille les mises à jour relatives à cette extension.
- Le nouvel écran d'accueil pour les projets Java propose de créer un nouveau projet, d'ouvrir un projet existant ou de faire une visite rapide des outils Java. Les nouveaux projets peuvent utiliser les archétypes Maven, Spring Boot, Quarkus et MicroProfile, mais peut également renoncer complètement aux outils de construction. Microsoft a ajouté cet écran dans la mise à jour de février du code VS en tant que fonctionnalité expérimentale.
- Le nouvel écran Configure Java Runtime permet de paramétrer le JDK du projet. Il affiche également tous les JDK installés et propose de télécharger des JDK à partir de diverses distributions d'OpenJDK.
- La nouvelle vue Java Project est calquée sur la vue Project Explorer de l'IDE Eclipse.
- La vue type hierarchy affiche les classes de base et dérivées sous forme d'arborescence. Cette vue est similaire aux vues correspondantes dans Eclipse IDE et IntelliJ IDEA. Red Hat a contribué à cette fonctionnalité.
- Déplacer une classe vers un nouveau package par glisser-déposer déclenche désormais un refactoring correct qui met à jour toutes les références à la classe qui a été déplacée. Red Hat a également construit cette fonctionnalité
- La vue Maven affiche désormais tous les objectifs exécutables dans la section "Lifecycle". Chaque plugin, cependant, répertorie toujours ses goals séparément.
- Le Spring Boot Dashboard affiche la classe principale d'un projet Spring Boot. Cela nécessite l'extension du même nom et fait partie de l'Spring Boot Extension Pack.
- Les projets Spring affichent désormais les valeurs des variables, des champs et des paramètres dans le code source pendant le débogage. Cela nécessite l'extension Spring Boot Tools, qui est également contenue dans le Spring Boot Extension Pack. Il repose sur l'affichage de la valeur en ligne pour Java que Microsoft a ajouté en avril
- Toutes les méthodes de test JUnit (telles que
@BeforeEach
ou@AfterAll
) peuvent désormais être facilement générées dans une classe via un menu contextuel. Microsoft a également ajouté cela en avril. - Les projets Java qui produisent un fichier JAR peuvent se déployer sur Microsoft Azure avec un un seul clic. Cela nécessite l'extension Azure Tools.
- Une nouvelle vue pour Spring Cloud sur Microsoft Azure fournit des opérations courantes, telles que le démarrage, l'arrêt ou la mise à l'échelle, directement dans VS Code. Cela nécessite également l'extension Azure Tools.
Microsoft a également présenté deux fonctionnalités générales d'Azure avec des exemples Java : Application Insights et DevOps Starter. Application Insights fournit des métriques d'application similaires aux offres de New Relic. Ces métriques sont soit collectées par des agents externes des applications déployées ou par les applications elles-mêmes via un SDK Azure.
DevOps Starter crée une application complète avec un référentiel GitHub, des actions GitHub pour l'intégration continue, un déploiement sur Azure et des tests. Les projets Java DevOps Starter peuvent désormais utiliser Gradle, ce qui réduit le temps de génération de plusieurs minutes avec Maven à 33 secondes comme illustré dans l'exemple.
Oracle a récemment annoncé une extension VS Code pour son framework pour microservices le projet Helidon. Cette extension contient un assistant de génération de projet et peut également compiler et redémarrer en continu une application à l'aide de la CLI Helidon qu'Oracle ajouté dans Helidon 2.0.
Microsoft a pris en charge Java 16 dans VS Code en avril 2021, un mois après sa sortie.