Что нового в ReSharper Ultimate 2019.2

В ReSharper Ultimate 2019.2 улучшена поддержка C# 8.0, обновилась навигация и поиск использований, а также подсказки данных в отладчике. Кроме того, сократилось время запуска, и появилась начальная поддержку режима Per-Monitor DPI Awareness в VS 2019. Индексация проектов C++ выполняется быстрее, поддержано больше функций C++20.

Скачать

Доступна бесплатная пробная версия на 30 дней

Улучшенная поддержка C#

Улучшенная поддержка C#

Используйте больше возможностей C#8 в ReSharper:

  • Поддержаны последние изменения в индексах и диапазонах, например, индексируемые и диапазонные типы.
  • Контекстное действие Add range check теперь поддерживает индексацию по System.Index/System.Range и производит соответствующие проверки.
  • Поддержаны неуправляемые обобщенные структуры.
  • Две новые инспекции Convert switch statement to switch expression и Convert chain of ternary expressions to switch expression с соответствующим быстрым исправлением Convert to switch expression.

Вы просили — мы сделали: контекстное действие Convert concatenation to interpolation теперь можно применять в различных масштабах (файл/проект/решение).

Ускоренный запуск

Вслед за Rider мы начали использовать проектную модель, основанную на MSBuild, вместо Visual Studio COM API. Это поможет сократить время загрузки решения, поскольку мы минимизировали использование COM API, который блокирует поток пользовательского интерфейса.

Кроме того, мы обновили страницу руководства по улучшению производительности. На ней появился новый раздел Windows Defender, а также описания всех советов по улучшению производительности, из которых вы узнаете, что именно произойдет после применения предложения.

Навигация и поиск использований

Навигация и поиск использований

С этой версии механизм Find Usages начинает использовать данные из Solution Wide Error Analysis для сбора результатов. Если вы включите SWEA для своего решения, Find Usages покажет результаты значительно быстрее.

Мы добавили несколько небольших улучшений в навигацию и надеемся, они будут полезны:

  • Можно производить поиск в файле прямо через диалог Go to File Member. Список результатов будет содержать имена всех подходящих членов и всех мест в файле, где есть искомая строка.
  • В окне результатов действия Go To Text теперь можно отфильтровать строки комментариев, если вы не заинтересованы в том, чтобы они были включены в поиск.
Подсказки данных в отладчике

Подсказки данных в отладчике

В ReSharper 2019.2 добавлено несколько обновлений подсказок данных в отладчике:

  • Новые переключатели: неявное вычисление функции и автоматическое вычисление свойства.
  • Они учитывают настройку Enable property evaluation and other implicit function calls (включить вычисление свойств и другие неявные вызовы функций) и могут вычислять значения свойств по требованию.
Стиль и форматирование кода

Стиль и форматирование кода

Расширяя поддержку C#8.0, мы добавили новые параметры форматирования switch-выражений. Поддержка .editorconfig, StyleCop.Settings и .clang-format теперь работает лучше и включена по умолчанию для подсветки и анализа ошибок по всему решению. Вы также можете редактировать свойства EditorConfig прямо на странице Options.

Поддержка режима Per-Monitor DPI Awareness

Поддержка режима Per-Monitor DPI Awareness

ReSharper Ultimate 2019.2 предоставляет улучшенную поддержку режима Per-Monitor DPI Awareness, представленного в Visual Studio 2019. Мы знаем, что некоторые пользователи ReSharper отключили оптимизацию рендеринга для экранов с разной плотностью пикселей (в меню Tools | Options | Environment | General), потому что испытывали проблемы с отображением окон инструментов ReSharper. Пожалуйста, включите ее снова и проверьте, как все работает. Обратите внимание, что в некоторых местах все еще возможны видимые дефекты.

Другие возможности

Другие возможности

  • Подсказки имен параметров работают быстрее и имеют новые эвристики.
  • В IL Viewer появилась новая подсказка с описанием ключевых слов.
  • Диалог Advanced symbols options в меню ReSharper | Options | Tools | External Sources теперь поддерживает относительные пути.
  • В окне инструмента Assembly Explorer теперь есть свойство Summary на вкладке Properties и поддерево неуправляемых ресурсов (win32).
Поддержка Unreal Engine

Поддержка Unreal Engine

В предыдущем релизе мы начали работу над улучшением поддержки удаленного вызова процедур для UE4. Теперь мы обновили рефакторинги Rename и Change Signature для корректной работы с функциями RPC. Добавлено несколько новых проверок кода для Unreal Engine, в частности для обнаружения отсутствующих или неправильно установленных макросов рефлексии UE4.

В версии 2019.1 мы реализовали автодополнение для спецификаторов рефлексии, а теперь добавили для них встроенную документацию. Она отображается во всплывающем окне Quick Documentation (Ctrl+Q), когда курсор установлен на спецификаторе.

Ускоренная индексация проектов C++

Ускоренная индексация проектов C++

Новая реализация препроцессора, используемая в ReSharper C++, позволила на 15-25% ускорить индексацию типичных решений, таких как LLVM и Unreal Engine.

Узнать, что нового в ReSharper C++.

Улучшения консольного профилировщика dotMemory dotUltimate

dotMemory 2019.2 прекращает поддержку удаленного профилирования. Чтобы предложить вам адекватную замену, мы значительно улучшили консольный профилировщик dotMemory:

  • Профилировщик получает команды для профилирования всех типов приложений, включая приложения .NET Core, приложения, размещенные на IIS Express, службы Windows и другие.
  • Аргумент --trigger-on-activation позволяет сделать снимок памяти, как только это возможно. Эта функция будет полезна, если вы хотите сделать снимок базового состояния и использовать его для сравнения.
Скачать

Доступна бесплатная пробная версия на 30 дней