
et offre enfin la possibilité de personnaliser les thèmes
JetBrains vient d'annoncer la première mise à jour majeure de cette année de son EDI phare pour Java. IntelliJ IDEA 2019.1 est disponible et apporte un bon lot de fonctionnalités et améliorations couvrant différents domaines. Mais parmi les plus notables, on peut mettre en avant la personnalisation des thèmes et les expressions Switch. Nous ne donnerons ici qu'un aperçu de l'ensemble des nouveautés, en vous laissant vous référer aux notes de version pour une liste plus exhaustive et détaillée.
Les thèmes
Au niveau de l'interface utilisateur, on notera l'arrivée de nouveaux thèmes et un support officiel pour la personnalisation des thèmes. Pendant longtemps, IntelliJ IDEA n’est apparu qu’en noir et blanc, alors que la possibilité de personnaliser l'EDI était une requête de longue date des développeurs. Aujourd'hui, cette demande a été satisfaite et IntelliJ IDEA 2019.1 est plus flexible que jamais grâce aux thèmes personnalisés.
JetBrains a créé quelques nouveaux thèmes : violé foncé, cyan clair et gris. Vous pouvez ajouter plus de couleurs à votre EDI en téléchargeant l’un de ces nouveaux thèmes et en le sélectionnant comme thème dans les paramètres d’apparence. Chaque thème est en fait un plug-in de thème que vous pouvez télécharger directement à partir du référentiel de plug-ins d'IntelliJ IDEA.

Thème violet foncé

Thème cyan clair

Thème gris
JetBrains vous donne aussi la possibilité de concevoir votre propre thème à partir de zéro ; ce qui a d'ailleurs été rendu très facile. Si vous le souhaitez, vous pouvez donc créer votre propre plug-in de thème à l'aide du kit de développement et modifier l'apparence de l'EDI via le fichier JSON.
Java
IntelliJ IDEA prend en charge les expressions Switch, une fonctionnalité qui vient de débarquer en préversion dans Java 12. Cette fonctionnalité étend l'instruction Switch en Java afin qu'elle puisse être utilisée également en tant qu'expression. Le Switch n'est donc plus juste une structure de contrôle (comme les if/else), mais peut maintenant renvoyer une valeur. Avec cette fonctionnalité vient aussi une nouvelle syntaxe plus pratique et plus concise qui utilise l'opérateur arrow (->

IntelliJ IDEA introduit plusieurs nouvelles inspections et de nouveaux correctifs rapides (quick-fix) pour vous aider à démarrer avec les expressions switch. L’EDI peut détecter toute instruction switch pouvant être remplacée par une instruction ou une expression switch améliorée, et fournira un correctif rapide pour la conversion. L'EDI détectera également les branches switch dupliquées et fournira un quick-fix pour fusionner de telles branches. Et il y a bien d'autres nouveautés de ce genre.
Puisque IntelliJ IDEA cible avant tout les développeurs Java, il est important de présenter les autres nouveautés et améliorations pour le langage. Parmi celles-ci, on note que :
- la refactorisation Extract variable (extraire la variable) a été considérablement améliorée et elle préserve encore mieux la sémantique ;
- dans les expressions ternaires, l'EDI met maintenant en évidence uniquement la condition dans laquelle une violation de nullabilité est détectée ;
- l'analyse des opérations mathématiques a été considérablement améliorée et l'EDI peut suivre le résultat d'opérations mathématiques et utiliser ces informations pour vous avertir des conditions toujours vraies ou fausses ;
- désormais, lorsque vous cliquez sur la trace de pile Java, l’EDI tente de déterminer l’emplacement exact de la ligne sur laquelle le curseur doit être placé. Auparavant, il ne vous menait qu'à la première colonne de la ligne correspondante ;
- il est possible de configurer des noms de variables pour les blocs try/catch générés automatiquement ;
- vous pouvez maintenant déplacer les instructions switch et les blocs catch vers le haut ou le bas en utilisant Move Statement Up/Down (Déplacer l'instruction vers le haut/bas) ;
- il est maintenant possible d'importer et d'exporter des modèles de recherche structurelle vers et depuis le presse-papiers ;
- etc.
Débogueur JVM
- l'évaluateur du débogueur JVM prend désormais en charge les instructions synchronisées, les expressions assert et les instructions switch ;
- il est maintenant possible de sortir du bloc courant pendant que vous déboguez un projet Java en utilisant la nouvelle action Step Out of the block disponible à partir du menu Run ;
- vous pouvez maintenant invoquer l'action run to cursor avec une souris, il vous suffit de cliquer sur le numéro de la ligne que vous ciblez lorsque vous êtes en mode débogage.
Éditeur
- il existe une nouvelle option pour exporter tous vos paramètres de style de code au format JSON. Vous pouvez utiliser tous les paramètres de style de code exportés pour les intégrations personnalisées avec des outils externes ;
- possibilité d’attribuer le raccourci Ctrl+Y à l’action Supprimer la ligne ou à l’action Rétablir via la boîte de dialogue Keymap Configuration lors de la première utilisation, sous Windows ;
- un keymap préconfiguré de Sublime Text est maintenant disponible dans l'EDI ;
- vous pouvez utiliser le keymap VSCode dans IntelliJ IDEA en installant le tout nouveau plug-in de keymap VSCode Text.
Docker
IntelliJ IDEA 2019.1 offre la possibilité de déboguer à l'intérieur d'un conteneur Docker. Vous pouvez maintenant attacher le débogueur à une application Java s'exécutant dans un conteneur Docker. L'IDE permet désormais le débogage à l'intérieur de conteneurs construits à partir d'un Dockerfile ou créés à l'aide de Docker compose (docker-compose.yml).
Outils de base de données
- prise en charge de nouvelles bases de données : Greenplum (une base de données d'analyse basée sur PostgreSQL), Vertica (base de données orientée colonne conçu pour gérer de gros volumes de données) et Apache Hive (un entrepôt de données construit sur Apache Hadoop pour fournir des fonctionnalités d'analyse et d'interrogation de données) ;
- la boîte de dialogue de connexion a un nouveau look ;
- possibilité de spécifier une requête SQL à exécuter chaque fois que vous établissez une connexion ;
- nouvelles options keep-alive et auto-disconnect. La première permet d'exécuter une requête particulière toutes les N secondes afin de maintenir la connexion active, alors que la deuxième permet de définir un délai au terme duquel l'EDI doit se déconnecter automatiquement.
Gradle
- les actions build et run sont déléguées à Gradle par défaut pour les nouveaux projets ;
- la délégation d'actions build et run à Gradle peut être définie individuellement pour chaque projet Gradle ;
- HotSwap fonctionne lorsque les actions build sont déléguées à Gradle ;
- la version intégrée de Gradle a été mise à niveau vers la v4.10.3 ;
- il est possible d'exécuter des tests paramétrés JUnit en utilisant le test runner de Gradle ;
- la fenêtre d’outil Gradle peut afficher la structure d’un projet multimodule, de la même manière que si vous exécutiez la commande gradle projects.
Maven
- HotSwap fonctionne lorsque les actions build sont déléguées à Maven ;
- la seule version fournie de Maven est maintenant la v3.3.9, Maven 2 ne sera plus livrée avec IntelliJ IDEA ;
- maintenant, la fenêtre d'outil de build vous permet de voir toutes les sorties Maven liées au build en un seul endroit ;
- les diagrammes Maven ont été améliorés et étendus avec de nouvelles options. Vous pouvez par exemple facilement trouver les dépendances en conflit ou dupliquées en utilisant Show Conflicts/Duplicates (Afficher les conflits/les doublons).
Autres changements
IntelliJ IDEA 2019.1 apporte bien d'autres améliorations, y compris pour les langages Scala, Groovy, Kotlin et JavaScript/TypeScript, mais aussi pour le contrôle de version, entre autres. Vous y trouverez plus d'information sur le site officiel de l'EDI de JetBrains.

Source : Annonce de JetBrains
Voir aussi :




Vous avez lu gratuitement 4 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.