Nouveautés dans Visual Studio 2/2

Depuis les versions précédentes, Microsoft utilise l’intelliSense pour proposer automatiquement des compléments aux mots-clés, des méthodes et mêmes des variables selon le contexte, le langage et la référence utilisées

Il s'agit de la deuxième partie de cet article !

Visual Studio IntelliCode

 

 

Depuis les versions précédentes, Microsoft utilise l’intelliSense pour proposer automatiquement des compléments aux mots-clés, des méthodes et mêmes des variables selon le contexte, le langage et la référence utilisées. Voici un exemple avec le type DateTime ci-contre.

Pour augmenter la productivité du codage et proposer des compléments de code encore plus précis, Microsoft a eu l’idée d’intégrer des algorithmes basés sur le machine learning et l’Intelligence Artificielle dans une extension : c’est l’IntelliCode ! L’ayant rendue disponible à la fois pour Visual Studio Code et pour Visual Studio 2019, l’objectif est de développer davantage de nouvelles fonctionnalités sous forme d’extensions afin d’en faire bénéficier les utilisateurs des deux IDEs. Visual Studio IntelliCode est téléchargeable depuis la marketplace de Visual Studio. Après téléchargement, il suffit de procéder à son installation dans chacune des applications. Cette extension permet de faire un apprentissage sur son code (solution) de sorte que, selon le contexte (boucle, type de variable, requêtes…), l’application fasse des propositions intelligentes en se basant sur le contenu et le type de méthodes et de variables. Le but est d’identifier la façon dont est codée la solution afin d’en extraire les habitudes pour favoriser la cohérence du code dans toute la solution.

 

 

Pour l’essayer, il suffit d’ouvrir l’extension grâce la barre de recherche située en haut à droite dans la barre de titre. Dans la fenêtre qui s’ouvre, on voit les modèles partagés avec soi et ceux créés localement. En se basant sur sa solution, on peut entraîner son propre modèle en cliquant sur « Effectuer l’entraînement sur mon code ». Une fois l’entraînement terminé en quelques minutes, on peut le partager, le supprimer et même l’entraîner à nouveau après une modification du code. On peut visualiser dans les détails du modèle, le nombre de classes prises en compte dans le modèle et quelques recommandations sur les divers contextes dans lesquelles utiliser les méthodes.

En testant le modèle, on remarque bien que selon les méthodes appelées (contexte), l’application propose les variables correspondantes.

Faster Debugging & Search in Watch and locals’ windows

 

 

Microsoft a considérablement amélioré le débogage des codes par rapport aux versions précédentes. Après avoir défini un point d’arrêt et lancé le débogage, on constate dans la fenêtre des diagnostics que le débogage est plus rapide qu’auparavant.

Une autre plus-value de cet outil de débogage est qu’il est maintenant possible de lancer une recherche dans les fenêtres Watch (Espion) et Locals (Variables locales) pendant le débogage, ce qui n’était pas possible dans les versions précédentes. Il est également possible de préciser le niveau ou la profondeur de la recherche. Autrement dit, on peut définir jusqu’à quel niveau de la hiérarchie on souhaite faire la recherche.

 

 

En outre, on peut visualiser les objets, les variables et leurs contenus. Il suffit d’utiliser des mots-clés pour trouver des éléments de code, les mettre en surbrillance et y accéder directement.

On peut également afficher une liste déroulante de spécificateurs et d’options pour définir le format des données dans les fenêtres Espion, Automatique et Variables locales en ajoutant une virgule à un élément de la liste (voir figuire <-).

 

Visual Studio Live Share

Live Share permet une collaboration en temps réel entre deux développeurs. Plus besoins de récupérer le code depuis une branche, ni de mettre à jour ses packages, ni de pousser le code pour qu’il puisse être modifié par un autre membre de l’équipe. Avec Live Share, les collaborateurs peuvent faire du pair programming en temps réel c’est-à-dire qu’ils peuvent depuis leurs ordinateurs respectifs modifier un même code en live. Chacun a la possibilité de lancer un débogage, qui sera visible en temps réel sur l’ordinateur du second collaborateur. De plus, on est connecté par audio, même à distance. 

Cette fonctionnalité existe sous forme d’extension pour Visual Studio 2017, mais est une fonctionnalité native de Visual Studio 2019.

Démo sur Live Share

Pour démarrer Live Share, il suffit de cliquer sur le bouton dédié situé en haut à droite dans la barre de titre en dessous du profil utilisateur.

 

 

Une fenêtre s’ouvre, accompagnée d’un warning juste au-dessus, proposant de faire un partage en lecture seule, de copier à nouveau le lien d’invitation à envoyer à l’autre collaborateur ou de prendre connaissance des mesures pour un partage sécurisé. Dans la fenêtre figure le lien d’invitation à envoyer.

Dans Visual Studio Code, Live Share est une extension à installer.

Le second collaborateur n’a plus qu’à utiliser l’url pour accéder au code. Par exemple, dans Visual Studio Code, après avoir installé l’extension, il lui suffit de procéder comme suit :

 

 

Une fois le chargement terminé, il aura accès au code et pourra visualiser en temps réel les modifications apportées par l’autre collaborateur. Les deux collaborateurs, bien qu’ils aient chacun un certain contrôle sur le code écrit par l’un ou l’autre, ne sont pas tenus de travailler sur le même fichier. Ils peuvent donc coder n’importe où dans la solution au même moment. Chacun a la possibilité de suivre le curseur de l’autre développeur dans les différents fichiers.

Dans Visual Studio Code, grâce à une icône :

Et dans Visual Studio 2019, en cliquant sur l’option :

Ils peuvent aussi lancer le débogage et même le contrôler depuis l’un ou l’autre des postes. Autrement dit, une fois le débogage lancé sur l’un des postes, l’autre collaborateur peut le visualiser sur son poste, ainsi que les points d’arrêts. Ils peuvent tous les deux mettre des points d’arrêts indépendamment sur leurs postes respectifs. De plus, ils peuvent utiliser les nouvelles fonctionnalités apportées par Visual Studio 2019 pour un meilleur débogage (voir Faster Debugging & Search in Watch and locals’ windows).

Pour les applications web, après lancement du débogage, chaque utilisateur visualise l’application dans son navigateur et peut interagir avec l’application différemment sur son ordinateur sans impacter sur l’autre.

Tout cela est possible car Live Share offre un partage de servers pour les applications web, configurables depuis Visual Studio 2019.

 

On peut également partager le terminal en lecture seule ou en lecture/écriture depuis Visual Studio 2019 :

 

Cependant, les commandes dans le terminal ne fonctionneront que si elles sont écrites depuis le terminal du premier collaborateur (celui qui a émis le partage). Le contraire ne saurait fonctionner car le terminal est ouvert dans le répertoire courant du premier collaborateur et n’exécutera les commandes que sur son ordinateur. Mais les résultats sont visibles depuis les deux terminaux.

Vous savez tout maintenant, ou presque, des nouveautés dans Visual Studio 2019. Ces fonctionnalités augmenteront votre productivité et vous permettront de vivre une toute nouvelle expérience en tant que développeur !

Article initialement paru dans le magazine Programmez! n229