GoLand 2019.3 avec des performances améliorées, une prise en charge améliorée des modules Go et plus

Bonjour, Habr!


Il y a deux semaines, nous avons publié GoLand 2019.3.




Cette version est spéciale pour notre équipe et diffère des précédentes. Depuis que GoLand du plug-in est devenu un IDE indépendant, 2 ans se sont écoulés. Pendant tout ce temps, nous avons essayé d'ajouter autant de fonctionnalités que possible: d'un ensemble de refactoring, d'intégrations avec des profileurs, un support de qualité pour les modules Go, des inspections de code et des thèmes personnalisés à la possibilité de télécharger et d'installer n'importe quelle version du SDK directement depuis l'IDE.


Dans cette version, nous avons décidé de nous concentrer sur l'amélioration des performances, la correction de bugs mineurs, des imperfections et des scénarios avec un comportement inattendu. Cependant, ils n'ont pas pu résister et ont quand même ajouté quelques nouveautés :)


Bref, alors:


  • GoLand 2019.3 consomme moins de ressources CPU et est beaucoup plus rapide qu'auparavant.
  • Prise en charge améliorée des modules Go.
  • Ajout de nombreuses nouvelles corrections rapides et fonctionnalités pour la refactorisation.
  • Les inspections ne montrent que les correctifs rapides les plus appropriés pour un morceau de code particulier.
  • Vous pouvez désormais déboguer des applications à distance à l'aide de Mozilla rr sur MacOS ou Windows.
  • Il existe un paramètre par défaut global pour File Watchers pour tous les nouveaux projets.
  • Pris en charge par MongoDB.
  • Nous avons ajouté des leçons interactives à l'EDI: d'une part, c'est une manière alternative de découvrir de nouvelles fonctionnalités et, d'autre part, la possibilité de la tester immédiatement en action.

Performances


Nous avons travaillé dur pour accélérer l'IDE et consommer moins de ressources. Le résultat principal - un temps de démarrage réduit.


Veuillez noter que les résultats peuvent varier en fonction de la taille du projet, de l'âge de l'appareil, de la quantité de RAM et de l'espace disque.


L'amélioration des performances se poursuivra dans les futures versions.





Modules Go


GoLand 2019.3 a une coloration syntaxique pour les fichiers go.mod et une navigation au nom du module importé dans le dossier avec son code source. Appuyez sur ⌘ + B sous MacOS ou Ctrl + B sous Windows / Linux sur un chemin d'importation de dépendance spécifique, et GoLand vous amènera à ses sources dans la vue du projet .


De plus, les modules Go sont désormais affichés avec le chemin d'importation complet et leurs versions sont représentées par la couleur de police en sourdine dans la fenêtre Vue du projet .





Débogueur


Appeler une méthode de champ en ligne


Évaluer l'expression dans le débogueur vous permet désormais d'appeler directement la méthode de champ en ligne.





Débogage à distance avec Mozilla RR


Le débogage avec Mozilla rr est pris en charge depuis GoLand 2018.3, mais auparavant, il ne fonctionnait que sur Linux. Vous pouvez maintenant démarrer le serveur sous Linux et déboguer le programme à distance sous MacOS ou Windows. Voici comment procéder:


  • Enregistrez la trace d'exécution du programme sur la machine distante.
  • Exécutez le débogueur sur la machine distante:

dlv --headless --api version 2 -l localhost: 2345 Rembourser / chemin / vers / trace / dir / chemin / vers / binaire .


  • Connectez-vous à un ordinateur distant via la configuration Go Remote .

Veuillez noter que Mozilla rr est uniquement disponible sur Linux.





Nouvelles solutions rapides


Gestion des paramètres inutilisés


GoLand met désormais en évidence le nom et le type du paramètre inutilisé, ou uniquement le nom si le type est impliqué dans l'implémentation de la signature de méthode.


Dans ce dernier cas, l'EDI propose deux solutions rapides au choix: Supprimer les noms de paramètres et Renommer en _ . Le même comportement est fourni pour les fonctions et méthodes utilisées comme type fonctionnel.


Pour supprimer tous les paramètres inutilisés à la fois, appuyez sur Alt + Entrée et utilisez le correctif rapide Supprimer tous les paramètres inutilisés .





Créer une méthode ou une fonction manquante


Si une fonction ou une méthode qui n'a pas été déclarée précédemment est utilisée comme un littéral de fonction, GoLand proposera de les créer. Appuyez simplement sur Alt + Entrée et sélectionnez Créer méthode / fonction .





Amélioration de la gestion des alias de packages


GoLand propose désormais d'importer des packages en fonction des alias utilisés via Alt + Entrée dans n'importe quel fichier de projet.





Refactoring


Modifier la signature


Modifier la signature affiche désormais toujours les types de paramètres dans les onglets Paramètres et Paramètres de résultat . Pour combiner les mêmes types de paramètres dans une signature, l'option Réutiliser les types est utile.


En outre, vous trouverez deux nouvelles actions d'intention: les types de signature de réutilisation combineront toutes les mêmes définitions de paramètres dans une déclaration, et la signature d' extension, au contraire, ajoutera des types à chaque paramètre via Alt + Entrée .





Extraire la variable et renommer


Extraire la variable et Renommer offrent des noms appropriés pour les variables, analysant le contexte. Par exemple, err pour une expression avec gestion des erreurs, ctx pour context.Context , etc.





Inspections du code


Les inspections de code fonctionnent désormais plus étroitement. Nous avons réduit la plage de mise en évidence des problèmes potentiels dans l'éditeur, de sorte que lorsque vous appelez le menu contextuel via Alt + Entrée, n'affichez que les correctifs rapides les plus appropriés pour une section particulière de code.





Édition de code


Améliorations de l'éditeur avec les littéraux de runes


Nous avons amélioré le travail de l'éditeur avec des littéraux runiques:


  • GoLand fournit un message d'erreur plus clair et plus court expliquant pourquoi l'expression est incorrecte.
  • GoLand ne met pas en surbrillance le littéral de rune correct en tant qu'erreur après la modification.
  • La gestion des littéraux de runes invalides est plus stable.




Mise en évidence de la syntaxe de réaffectation


Go vous permet d'utiliser des variables existantes sur le côté gauche de var déclarations courtes. Ainsi, deux expressions qui se ressemblent peuvent avoir des significations différentes. Pour rendre cela plus facile à remarquer, nous avons ajouté une coloration syntaxique pour le remappage.





Réduire les blocs de code pour les littéraux composés


Dans GoLand 2019.3, vous pouvez réduire les blocs de code pour les littéraux composés. Utilisez les boutons radio pour ajouter ou décomposer un morceau de code (appuyez sur Ctrl + NumPad Minus / Ctrl + NumPad Plus sous Windows ou ⌘ + NumPad Minus / ⌘ + NumPad Plus sous MacOS). Pour configurer le comportement de pliage des blocs de code, accédez à Paramètres / Préférences | Editeur | Général | Pliage de code .





Modèles en direct


Les modèles en direct pour et forr offrent des noms significatifs pour les variables, meth pour le récepteur. Par exemple, les noms i et index seront suggérés pour l'index; pour une variable, s, chaîne ou ligne.





La navigation


Rechercher uniquement dans la zone sélectionnée


En utilisant l'action Rechercher ( ⌘ + F sur MacOS et Ctrl + F sur Windows / Linux), vous pouvez maintenant rechercher le morceau de code requis dans une zone limitée. Sélectionnez le fragment souhaité dans l'éditeur et appelez Find - GoLand ne recherchera que dans la zone sélectionnée. Pour passer facilement à la recherche dans l'ensemble du fichier, appuyez une deuxième fois sur ⌘ + F / Ctrl + F ou utilisez l'option Dans la sélection dans la barre d'outils.





Utilisation de «Rechercher dans le chemin» avec un masque de fichier


Désormais, lorsque vous utilisez la boîte de dialogue Rechercher dans le chemin d'accès avec l'option de masque de fichier , GoLand affiche les extensions de fichier dans les résultats de la recherche pour faciliter la distinction entre les fichiers portant le même nom.





Global File Watchers pour tous les nouveaux projets


Dans GoLand 2018.2, nous avons ajouté le Global File Watcher pour échanger des paramètres d'outils tiers entre des projets déjà créés à l'aide des options Projet et Global. Dans la nouvelle version, vous pouvez activer le paramètre global de File Watchers par défaut dans tous les nouveaux projets que vous créez ou ouvrez.


Dans le menu Fichier , sélectionnez Autres paramètres | Paramètres des nouveaux projets , accédez à Outils | File Watchers , ajoutez un nouveau Global File Watcher, puis cochez la case à côté pour l'inclure dans tous les nouveaux projets.





Cours interactifs


Lorsque la date limite est sur le nez, il n'y a pas de temps pour étudier les nouveautés, les notes de version, lire un nouvel article sur le produit. Par conséquent, nous avons ajouté des leçons interactives - elles vous aideront à en apprendre davantage sur les fonctionnalités de GoLand, le moment venu.


Les leçons sont sur l'écran d'accueil au-dessus de la liste des projets. Après avoir mis à jour l'IDE vers la nouvelle version, une leçon sur la nouvelle version y apparaîtra. De plus, les didacticiels peuvent être ouverts à l'aide de la fenêtre d'outils de n'importe quel projet.





Divers


Hiérarchie


La fenêtre Hiérarchie a la capacité d'analyser la hiérarchie des appels de méthode. Deux nouveaux boutons vous permettent de basculer entre les méthodes appelées à partir de la méthode actuelle ou d'appeler la méthode actuelle. Vous pouvez également désormais trier les éléments de l'arborescence par ordre alphabétique. Pour voir la hiérarchie dans la liste des fenêtres d'outils, vous devez d'abord créer une hiérarchie, puis aller dans le menu Naviguer | Hiérarchie des appels ou Naviguer | Tapez Hiérarchie .





Installez des plugins de thème et des dispositions de clavier à la volée


Dans GoLand 2019.3, vous pouvez installer et supprimer des plugins de disposition de clavier et des plugins de jeu de couleurs sans redémarrer l'IDE.





Raccourci personnalisé pour retourner le focus à l'éditeur


Vous pouvez définir votre raccourci pour une action qui renvoie le focus à l'éditeur, au lieu d'utiliser le bouton ÉCHAP. Recherchez l'action Éditeur de focus dans Préférences / Paramètres | Keymap , faites un clic droit dessus et sélectionnez Ajouter un raccourci clavier dans le menu déroulant.





Barres de défilement contrastées


Nous avons ajouté la possibilité de rendre les barres de défilement plus visibles. Pour ce faire, cochez la case Utiliser les barres de défilement de contraste dans les Préférences / Paramètres | Apparence et comportement | Apparence .





Améliorations du support VCS


Boîte de dialogue Clone mise à jour


Nouvelle boîte de dialogue de clonage située sous VCS | Obtenez du contrôle de version . Vous pouvez maintenant vous connecter à votre compte GitHub directement à partir de la boîte de dialogue mise à jour. Si vous êtes déjà connecté, l'EDI affiche instantanément une liste de tous les référentiels regroupés par compte ou organisation dont vous êtes membre.





Informations sur les causes des conflits de fusion


Si des conflits surviennent lors des actions de fusion, de rebase et de sélection, vous pouvez désormais en savoir plus sur la source des modifications dans la boîte de dialogue Fusionner. Cliquez simplement sur Afficher les détails pour voir la liste des validations qui ont conduit à l'état actuel du code.





Améliorations du support de base de données


Prise en charge de MongoDB


GoLand 2019.3 fournit une prise en charge initiale de MongoDB. Vous pouvez maintenant:


  • Parcourez les collections et les champs dans l'explorateur de bases de données.
  • Parcourez les collections sous forme de tableau par page. Vous pouvez trier par valeurs et utiliser un filtre.
  • Exécutez une requête: placez un chariot dessus et appuyez sur Ctrl / Cmd + Entrée ou sur le bouton Exécuter de la barre d'outils.




Rechercher des erreurs de connexion à l'aide de Google


Vous pouvez maintenant commencer à enquêter sur les erreurs de connexion en appuyant sur un seul bouton dans l'IDE - et GoLand ouvrira les résultats des erreurs dans le moteur de recherche Google.





C'est tout! Merci d'avoir lu jusqu'au bout! Nous apprécions vos commentaires et essayons de répondre à toutes vos questions. Écrivez-nous ici dans les commentaires, sur Twitter ou dans le bug tracker .


Votre équipe JetBrains GoLand


La volonté de se développer

Source: https://habr.com/ru/post/fr479748/


All Articles