ReSharper 2024.3 最新变化

ReSharper 2024.3 为 C# 13 功能提供了全面支持,包括 params 集合、partial 属性、新的 lock 类型和 field 关键字。 此更新通过改进的性能和灵活的格式设置选项增强了代码清理,并添加了更精确的命名约定。 多行 TODO 注释和工具提示着色可以提升代码的可读性和组织。 Unreal Engine 开发获得了新功能,性能和 Clang 互操作性也有所改进,对 C++ 的支持由此增强。

下载

可免费试用 30 天

C# 支持

C# 13 更新

在最新版本中,ReSharper 引入了对 C# 13 的最新功能的支持:

  • 新的 params 集合params 关键字已扩展为适用于各种集合类型,从而无需额外分配即可实现更高效的方法签名。
  • partial 属性:partial 属性获得了支持,使您能够将属性访问器实现分布在多个文件中,提升代码库的灵活性和组织。
  • 新的 lock 类型:新引入的 System.Threading.Lock 类型可以实现更高效的线程同步,性能高过 lock 语句。
  • 重载解析优先级:提供了一个新特性,它可以更好地控制方法重载解析,并允许开发者指定复杂情况下优先调用的重载。
  • field 关键字field 关键字新增了预览功能。 这样可以直接访问自动属性的支持字段,有助于简化属性逻辑。

在我们的博客上了解 ReSharper 和 Rider 中 C# 13 功能支持的全部信息。

代码样式和清理

代码清理

在 ReSharper 2024.3 中,代码清理经过重新设计,性能更加强大。 现在,它利用与作用域受限的快速修复相同的引擎,确保彻底解决问题并提高分析器的精度。 新增的并行预处理可以优化文件处理。 此外,您现在还可以为每个文件选择代码清理配置文件或跳过特定文件的清理。

代码格式设置

新增的格式设置选项将为您提供更多灵活性:

  • 用于控制相等 = 运算符周围换行的新选项。
  • 新的 Indent ‘break’ from ‘case’(缩进 ‘case’ 中的 ‘break’)选项。
  • 新的 Treat ‘case’ statements with ‘break’ as simple(将带有 ‘break’ 的 ‘case’ 语句视为简单)选项。

命名样式

我们添加了几个新选项用于更精确地调整命名规则。

  • 局部函数现在有两个选项:Local functions with ‘async’(带有 'async' 的局部函数)和 Task-returning local functions (not ‘async’)(返回任务的局部函数(非 'async'))。
  • 方法新增了 Task-returning method (not ‘async’)(返回任务的方法(非 'async'))选项,以支持名称中带有 async 后缀,未使用 async 修饰符标记但返回类似 Task 类型的方法。 如果在接口中声明了一个方法,而该接口不允许使用 async 修饰符,但它在实现中会返回 Task 类型,这就很有用。

Code comments

多行 TODO 注释支持

ReSharper 2024.3 现在支持多行 TODO 注释,允许将后续行中的缩进文本视为同一 TODO 条目的一部分。 此增强可让您更轻松地在代码库中将相关注释和任务分组在一起。 现在,您可以跨多行向 TODO 添加上下文,提升可读性和组织。

此外,我们还更新了 Peek To-do link(速览 TODO 链接,Ctrl+Shift+点击)操作,让您可以内联查找与 TODO 条目相关的外部问题。 它现在使用现代 Web 浏览器引擎为您提供更好的渲染体验。

用户体验

工具提示着色

在此版本中,我们检查了几乎所有 C# 错误、警告和信息性消息,并尽可能引入了文本着色。

大约 600 条消息获得更新,工具提示可以提供更直观的阅读体验,包含的代码元素以编辑器的常见配色方案高亮显示。

C++ 支持

ReSharper 2024.3 为 C++ 支持带来了多项改进:

  • 改进了大型解决方案中的性能。
  • C++ 文件的 Move to Folder(移动到文件夹)重构。
  • 对 C++ 23、C23 和 GNU 新语言功能的支持。
  • 面向 Unreal Engine 开发者的新编码辅助功能。
  • 增强了与 Clang 工具的互操作。

ReSharper C++ 2024.3 最新变化 页面详细了解 C++ 更新。

反编译器

程序集清单的 IL 代码

IL Viewer(IL 查看器)工具窗口现在为程序集清单提供 IL 代码,包括:

  • 程序集和模块信息,例如名称、自定义特性等。
  • 引用的程序集和模块。
  • 转发的类型。
  • 文件和资源的列表。

当文本编辑器中的文本光标位于程序集或模块特性上或外部程序集的 <AssemblyName>.cs 文件内的某个地方时,会显示此 IL 代码。

对主构造函数的支持

使用声明主构造函数的类时,反编译器现在将正确显示构造函数及其形参,让您直接从反编译的代码中完整了解对象实例化的方式。

下载

可免费试用 30 天