Nouveautés de ReSharper Ultimate 2019.2

ReSharper Ultimate 2019.2 apporte une meilleure prise en charge de C# 8.0, plusieurs mises à jour dans Navigation, Find Usages et le débogueur data tips. Il améliore également les temps de démarrage et assure la compatibilité initiale avec le mode de « prise en charge DPI par moniteur » de VS 2019. L'indexation des projets C++ est plus rapide et davantage de fonctionnalités C++ 20 sont prises en charge.

Télécharger

Essai gratuit sur 30 jours disponible

Prise en charge C# améliorée

Prise en charge C# améliorée

Profitez de toutes les fonctionnalités de C# 8 grâce à ReSharper :

  • Prise en charge des dernières modifications dans indices et ranges, comme les types indexables et classables.
  • L'action contextuelle Add range check prend désormais en charge l'indexation selon System.Index/System.Range et produit des vérifications correctes.
  • Prise en charge des structures génériques non gérées.
  • Deux nouvelles inspections, « Convert switch statement to switch expression » et « Convert chain of ternary expressions to switch expression », avec un correctif rapide « Convert to switch expression » correspondant.

C'était l'une de vos demandes et nous y avons repondu : l'action contextuelle Convert concatenation to interpolation peut désormais s'appliquer au périmètre.

Démarrage plus rapide

En nous inspirant de Rider, nous avons commencé à utiliser le modèle de projet basé sur MSBuild au lieu de l'API COM de Visual Studio. Cela nous permet d'optimiser les temps de chargement de la solution, car nous avons réduit au strict minimum l'utilisation de l'API COM, qui verrouille le thread de l'interface.

D'autre part, nous avons mis à jour la page Performance Guide. Elle comporte une nouvelle section Windows Defender et des descriptions pour tous les conseils de performance qui permettent de savoir exactement ce qui va se produire une fois la suggestion appliquée.

Navigations et Find Usages

Navigations et Find Usages

Dans cette version, Find Usages commence à utiliser les données de Solution Wide Error Analysis pour collecter les résultats. Si vous activez SWEA pour votre solution, Find Usages affiche les résultats beaucoup plus rapidement.

Nous avons ajouté deux petites améliorations à la navigation et nous espérons que vous les trouverez utiles : 

  • Vous pouvez faire des recherches dans un fichier directement depuis la boîte de dialogue « Go to File Member ». La liste des résultats inclut les noms de tous les membres restants et de tous les endroits où cette chaîne de recherche s'affiche dans le fichier.
  • La fenêtre de résultats Go To Text permet désormais de filtrer les lignes de commentaires si vous ne souhaitez pas rechercher les occurrences dans des chaînes de commentaires.
Débogueur Data Tips

Débogueur Data Tips

ReSharper 2019.2 apporte plusieurs mises à jour au débogueur data tips :

  • Nous avons ajouté deux nouveaux choix : implicit function evaluation et auto evaluate property.
  • Ils respectent le paramètre Enable property evaluation and other implicit function calls et peuvent évaluer les valeurs de propriétés à la demande.
Style et formateur de code

Style et formateur de code

Pour améliorer la prise en charge de C# 8.0, nous avons ajouté de nouvelles options de formatage pour les expressions switch. La prise en charge de .editorconfig, StyleCop.Settings et .clang-format est désormais plus performante et est activée par défaut pour le surlignage et l'analyse Solution Wide Error Analysis. Vous pouvez également modifier les propriétés EditorConfig directement depuis la page Options.

Compatibilité avec le mode de « prise en charge DPI par moniteur »

Compatibilité avec le mode de « prise en charge DPI par moniteur »

ReSharper Ultimate 2019.2 assure une meilleure compatibilité du mode “Per-Monitor DPI Awareness” introduit dans Visual Studio 2019. Nous savons que plusieurs utilisateurs de ReSharper préféraient désactiver Optimize rendering for screens with different pixel densities (via Tools | Options | Environment | General) en raison du problème de rendu propre aux fenêtres d'outil de ReSharper. Veuillez l'activer à nouveau et juger par vous-même des améliorations. Remarque : il peut encore se produire des erreurs mineures à certains endroits.

Autres fonctionnalités

Autres fonctionnalités

  • Améliorations des performances et nouvelles heuristiques pour les conseils de nom de paramètres.
  • Une nouvelle info-bulle avec la description du mot clé est disponible dans IL Viewer.
  • La boîte de dialogue Advanced symbols options, accessible dans la section ReSharper | Options | Tools | External Sources, prend désormais en charge les chemins relatifs.
  • La fenêtre d'outils Assembly Explorer comporte à présent une propriété "Summary" dans l'onglet "Properties" et une sous-arborescence des ressources non gérées (win32).
Prise en charge d'Unreal Engine

Prise en charge d'Unreal Engine

Au cours de la version précédente, nous avions commencé à travailler sur une meilleure prise en charge des appels de procédure distante propres à UE4. Nous avons désormais mis à jour les refactorisations Rename et Change Signature pour qu'elles fonctionnent correctement sur les fonctions RPC. Plusieurs nouvelles vérifications d'analyse du code font également leur apparition pour le code basé sur UE4 et ciblent notamment les macros de réflexion UE4 manquantes ou définies de façon incorrecte.

Dans le sillage de l'ajout de la saisie semi-automatique pour les spécificateurs de réflexion dans v2019.1, nous leur avons ajouté une documentation intégrée. Vous la trouverez dans la fenêtre contextuelle Quick Documentation (Ctrl+Q) lorsque le caret est placé sur un spécificateur.

Indexation accélérée pour les projets C++

Indexation accélérée pour les projets C++

La nouvelle implémentation de préprocesseur utilisée dans ReSharper C++ a accéléré l'indexation des solutions type, telles que LLVM et Unreal Engine, à hauteur de 15 à 25 %.

Consultez la page Nouveautés de ReSharper C++.

Améliorations du profileur de console dotMemory dotUltimate

dotMemory 2019.2 ne prend plus en charge le profilage à distance. Afin de vous offrir une solution de remplacement adaptée, nous avons considérablement amélioré le profileur de console dotMemory:

  • Le profileur de console dispose de commandes permettant de profiler tous les types d'applications, notamment .NET Core, hébergées sur IIS Express, les services Windows etc.
  • L'argument --trigger-on-activation permet de créer un snapshot de la mémoire dès que cela devient possible. Cette fonctionnalité peut être utile si vous souhaitez prendre un snapshot de référence et l'utiliser à des fins de comparaison.
Télécharger

Essai gratuit sur 30 jours disponible