Das ist neu in ReSharper Ultimate 2019.2

ReSharper Ultimate 2019.2 bietet eine bessere Unterstützung für C# 8.0 und einige Aktualisierungen in Navigation, Find Usages und in den Debugger-Datatips. Es verkürzt auch die Startzeiten und bietet Erstunterstützung für den „Per-Monitor DPI Awareness“-Modus in VS 2019. Die Indizierung für Projekte in C++ erfolgt schneller und es werden mehr Merkmale von C++20 unterstützt.

Herunterladen

Kostenlose 30-Tage-Testversion verfügbar

Verbesserte Unterstützung für C#

Verbesserte Unterstützung für C#

Nutzen Sie alle Vorteile von C# 8 mit der erweiterten Unterstützung durch ReSharper:

  • ReSharper unterstützt die neuesten Änderungen in Indices und Ranges, z. B. indizierbare und Range-fähige Typen.
  • Die Kontextaktion Add range check unterstützt jetzt die Indizierung durch System.Index/System.Range und führt die Überprüfungen korrekt aus.
  • Nicht verwaltete generische Strukturen werden unterstützt.
  • Es gibt zwei neue Inspektionen, „Convert switch statement to switch expression“ und „Convert chain of ternary expressions to switch expression“, mit einem entsprechenden Quick-Fix „Convert to switch expression“.

Gewünscht und geliefert: Die Kontextaktion Convert concatenation to interpolation kann jetzt im Scope angewendet werden.

Schnellere Starts

In Anlehnung an Rider haben wir begonnen, das MSBuild-basierte Projektmodell anstelle der Visual Studio COM-API zu verwenden. Dies trägt zur Optimierung der Ladezeiten von Lösungen bei, da die Verwendung der COM-API, die den UI-Thread sperrt, minimiert wurde.

Darüber hinaus haben wir die Seite „Performance Guide“ aktualisiert. Diese enthält einen neuen Abschnitt zu Windows Defender sowie Beschreibungen für alle Performance-Tipps, in denen beschrieben wird, was genau getan wird, nachdem ein Vorschlag angewendet wurde.

Navigation und Find Usages

Navigation und Find Usages

Ab dieser Version verwendet Find Usages die Daten der Solution Wide Error Analysis zur Erfassung der Ergebnisse. Wenn Sie SWEA für Ihre Lösung aktivieren, zeigt Find Usages die Ergebnisse erheblich schneller an.

Wir haben ein paar kleinere Verbesserungen an der Navigation vorgenommen und hoffen, dass sie allgemein nützlich sind: 

  • Sie können eine Datei direkt im Dialogfeld “Go to File Member” durchsuchen. Die Ergebnisliste enthält die Namen aller passenden Member und alle Stellen, an denen die Suchzeichenfolge in der Datei auftritt.
  • Im Ergebnisfenster Go To Text können Sie jetzt die Kommentarzeilen herausfiltern, wenn Sie nicht an Vorkommen in Kommentaren interessiert sind.
Debugger-Datatips

Debugger-Datatips

ReSharper 2019.2 bringt mehrere Updates für die Debugger-Datatips:

  • Wir haben ein paar neue Umschalt-Optionen hinzugefügt: Implicit function evaluation und Auto evaluate property.
  • Diese Optionen berücksichtigen die Einstellung “Enable property evaluation and other implicit function calls” und können Eigenschaftswerte bei Bedarf auswerten.
Codestil und Codeformatierung

Codestil und Codeformatierung

Um die Unterstützung für C# 8.0 zu verbessern, haben wir neue Formatierungsoptionen für Switch-Ausdrücke hinzugefügt. Die Unterstützung für .editorconfig, StyleCop.Settings und .clang-format ist jetzt leistungsfähiger und wird per Voreinstellung für die Hervorhebung und für die Solution Wide Error Analysis verwendet. EditorConfig-Eigenschaften können jetzt auch direkt auf der Seite „Options“ bearbeitet werden.

Unterstützung für den Modus „Per-Monitor DPI Awareness“

Unterstützung für den Modus „Per-Monitor DPI Awareness“

ReSharper Ultimate 2019.2 bietet eine bessere Unterstützung für den Modus „Per-Monitor DPI Awareness“, der in Visual Studio 2019 eingeführt wurde. Uns ist bekannt, dass manche ReSharper-Benutzer die Option Optimize rendering for screens with different pixel densities (in Tools | Options | Environment | General) früher deaktiviert hatten, da sie bei den ReSharper-Toolfenstern zu Darstellungsfehlern führte. Bitte aktivieren Sie die Option wieder und überprüfen Sie die Darstellung. Bitte beachten Sie, dass es vielleicht noch Stellen gibt, an denen Störungen auftreten können.

Weitere Features

Weitere Features

  • Die Parameternamen-Hinweise haben Leistungsverbesserungen und neue Heuristiken erhalten.
  • Ein neuer Tooltip mit der Beschreibung des Schlüsselworts ist im IL-Viewer verfügbar.
  • Das Dialogfeld „Advanced symbols options“ unter „ReSharper | Options | Tools | External Sources“ unterstützt jetzt relative Pfade.
  • Das Toolfenster „Assembly Explorer“ verfügt nun auf der Registerkarte „Properties“ über eine Eigenschaft „Summary“ und eine Unterstruktur für nicht verwaltete (win32) Ressourcen.
Unterstützung für die Unreal Engine

Unterstützung für die Unreal Engine

In der vorherigen Version haben wir begonnen, an einer besseren Unterstützung für UE4-spezifische Remoteprozeduraufrufe zu arbeiten. Jetzt haben wir die Refaktorierungen Rename und Change Signature aktualisiert, damit sie für RPC-Funktionen ordnungsgemäß funktionieren. Für UE4-basierten Code stehen ebenfalls einige neue Codeanalyse-Prüfungen zur Verfügung, insbesondere für die fehlenden oder falsch eingestellten UE4-Reflection-Makros.

Nach dem Hinzufügen der Codevervollständigung für Reflection-Bezeichner in Version 2019.1 haben wir jetzt eine integrierte Dokumentation dafür hinzugefügt. Diese wird im Schnelldoku-Popup (Strg+Q) angezeigt, wenn sich der Textcursor auf einem Bezeichner befindet.

Schneller Indizierung für C++-Projekte

Schneller Indizierung für C++-Projekte

Die neue Präprozessor-Implementierung in ReSharper C++ hat die Indizierung von typischen Lösungen wie LLVM oder Unreal Engine um 15-25% beschleunigt.

Siehe Neuerungen in ReSharper C++.

Verbesserungen des dotMemory-Konsolenprofilers dotUltimate

dotMemory 2019.2 unterstützt kein Remote-Profiling mehr. Als angemessenen Ersatz bieten wir Ihnen den erheblich verbesserten dotMemory-Konsolenprofiler an:

  • Der Konsolenprofiler verfügt jetzt über Befehle zum Profilieren aller Arten von Anwendungen, einschließlich .NET-Core-Anwendungen, IIS-Express-gehosteten Anwendungen, Windows-Diensten usw.
  • Mit dem Argument --trigger-on-activation können Sie einen Speicher-Snapshot erstellen, sobald dies möglich ist. Diese Funktion ist hilfreich, wenn Sie einen Basis-Snapshot erstellen und zum Vergleich verwenden möchten.
Herunterladen

Kostenlose 30-Tage-Testversion verfügbar