杰瑞科技汇

Resharper怎么用?新手入门教程看这里!

ReSharper 使用教程:从入门到精通

ReSharper 是由 JetBrains 公司推出的一款针对 Visual Studio 的智能插件,它被誉为 .NET 开发者的“神器”,它通过深度静态代码分析、强大的代码生成和重构功能,极大地提升了开发效率和代码质量。

Resharper怎么用?新手入门教程看这里!-图1
(图片来源网络,侵删)

第一部分:入门篇 - 快速上手与核心功能

安装与激活

  1. 下载:访问 JetBrains 官网 下载 ReSharper,新用户通常可以享受 30 天的全功能免费试用。
  2. 安装:双击安装包,它会自动检测你电脑上安装的 Visual Studio 版本,并完成集成,安装完成后需要重启 Visual Studio。
  3. 激活:启动 Visual Studio 后,ReSharper 会提示你激活,你可以使用购买的正版许可证,或者选择 Evaluate for free 继续试用。

熟悉界面与核心窗口

ReSharer 的核心功能都集成在 Visual Studio 中,主要通过几个关键窗口来体现:

  • ReSharper 操作面板:按 Alt + \ 快捷键可以呼出这个面板,这是 ReSharper 功能的“指挥中心”,你可以在这里搜索并执行任何 ReSharper 命令。
  • 代码改进建议:ReSharper 会在你的代码下方以绿色波浪线标出可以改进的地方,将鼠标悬停在上面,会看到具体的建议和快速修复的选项(通常是一个黄色的小灯泡图标)。
  • 代码结构窗口:默认在 Visual Studio 的右侧,它会以树状结构实时显示当前文件或整个项目的代码结构,非常方便导航。
  • 待办事项:ReSharper 会自动将代码中的 // TODO, // HACK 等标记收集到“待办事项”窗口中,方便你跟踪和管理。

核心功能一览

这是 ReSharper 的魅力所在,我们通过最常用的场景来介绍:

a. 代码导航与搜索

  • 导航到 (Ctrl + T):比 VS 自带的 Ctrl + , 更强大,可以搜索类、方法、字段、文件等。
  • 转到实现 (Ctrl + F12):从一个接口、抽象方法或虚名上,快速跳转到它的所有实现或重写。
  • 转到派生项 (Alt + F12):从一个基类或接口,快速查看所有派生类。
  • 解决方案中的符号 (Ctrl + T, 然后输入 ):全局搜索项目中的任何符号。
  • 最近的更改 (Ctrl + Shift + F12):快速跳转到你最近修改过的代码位置。

b. 实时代码检查与快速修复

这是 ReSharper 最直观的功能,它会实时分析你的代码,并给出优化建议。

  • 未使用的 using 指令:自动高亮并一键移除。
  • 未使用的局部变量/参数:提示并可以快速移除或注释。
  • 可能的“空引用”异常:当你访问一个可能为 null 的对象时,会给出警告。
  • 代码风格不一致:你的项目约定使用 var,但你写了显式类型,它会提示。
  • 快速修复:将鼠标悬停在警告上,点击黄色灯泡,选择建议的修复方案。

示例

Resharper怎么用?新手入门教程看这里!-图2
(图片来源网络,侵删)
// ReSharper 会提示 "Field 'myField' is never used"
private string myField = "hello"; 
// ReSharper 会提示 "Unnecessary using directive"
using System.Text; 
public void DoSomething()
{
    // ReSharper 会提示 "Possible 'null' reference exception"
    var length = myField.Length; 
}

c. 强大的代码生成

  • 构造函数/方法参数:在类中右键,选择 Generate -> ConstructorToString(), Equals(), GetHashCode() 等。
  • 重写/实现方法:在接口或基类上右键,可以一键生成所有需要实现的方法签名。
  • 属性:快速生成属性,甚至可以支持表达式体属性。
  • 从使用生成:当你使用了一个不存在的类或方法时,ReSharper 会提示你“创建类型”或“创建方法”,并自动填充好参数。

d. 重构

重构是 ReSharper 的王牌功能,可以在不改变代码外部行为的前提下,优化代码结构。

  • 重命名 (F2):智能重命名,它会重命名所有相关的引用,包括注释、字符串中的内容(如果确认是代码)等,比 VS 自带的更安全、更智能。
  • 提取方法 (Ctrl + Alt + M):将一段代码块提取成一个独立的方法,非常适合消除重复代码。
  • 提取接口 (Ctrl + Shift + I):从一个或多个类中提取出一个新接口。
  • 封装字段 (Ctrl + R, E):将一个 public 字段变成 private 并自动生成一个 public 属性,是面向对象编程的必备操作。
  • 更改签名 (Ctrl + R, S):批量修改一个方法的名称、参数、返回值等,并自动更新所有调用点。

第二部分:进阶篇 - 提升效率与代码质量

代码风格与格式化

ReSharper 可以强制整个团队保持一致的代码风格。

  • 基本格式化 (Ctrl + E, F):根据预设规则格式化选中的代码或整个文件。
  • 全面格式化 (Ctrl + E, C):不仅格式化代码,还会整理 using 指令、移除多余的空行等。
  • 自定义代码风格:通过 ReSharper -> Options -> Code Editing -> C# -> Formatting 可以自定义几乎所有的代码风格规则,比如括号位置、缩进、命名规则等。
  • 清理代码 (Ctrl + E, D):一个组合拳,会同时执行格式化、整理 using、移除未使用的引用等操作,非常适合在提交代码前运行。

Unit Testing 集成

如果你使用 MSTest, NUnit 或 xUnit,ReSharper 能让你的测试工作流无比顺畅。

  • 运行测试:在测试方法或类上右键,可以直接运行单个测试或整个测试类。
  • 创建测试 (Ctrl + T, T):在任何一个需要测试的类上,可以快速生成测试类和测试方法骨架。
  • 导航测试:轻松跳转到某个方法的测试代码或被测试的代码。
  • 覆盖率:可以直观地看到哪些代码被测试覆盖了,哪些没有。

解决方案范围分析

ReSharper 不只是分析单个文件,它能理解整个解决方案。

Resharper怎么用?新手入门教程看这里!-图3
(图片来源网络,侵删)
  • 查找重复代码ReSharper -> Inspect -> Find Code Duplication,它可以跨文件、跨项目查找重复的代码块,是重构的绝佳起点。
  • 依赖关系图ReSharper -> Diagrams -> Show Dependencies,可以可视化地查看项目、命名空间、类之间的依赖关系,帮助你发现设计上的问题。
  • 类型结构图ReSharper -> Diagrams -> Type Hierarchy,查看一个类的继承或实现关系。

第三部分:高手篇 - 自定义与高级技巧

自定义模板与 Live Templates

  • Live Templates:这是提高编码速度的“大杀器”,它是一些代码片段的快捷方式。
    • 内置模板:输入 prop 然后按 Tab,会自动生成一个属性;输入 ctor 然后按 Tab,会生成构造函数。
    • 自定义模板:你可以创建自己的模板,你经常需要写一个包含日志记录的方法,可以创建一个名为 logmeth 的模板,定义好结构,之后只需输入 logmeth + Tab 即可快速生成。
    • 设置路径:ReSharper -> Options -> Editor -> Live Templates

配置文件

为了在团队中统一使用 ReSharper,你可以导出和导入配置文件。

  • 导出ReSharper -> Options -> 在左下角点击 Export,将你的所有配置(代码风格、Live Templates、检查规则等)保存为一个 .xml 文件。
  • 导入:团队成员只需导入这个配置文件,就能立刻获得和完全一致的 ReSharper 体验。

命令行模式

ReSharper 提供了命令行工具,可以集成到你的 CI/CD 流程中。

  • 代码检查:可以在构建过程中运行 ReSharper.CommandLine.exe 对代码进行静态分析,如果发现严重问题,可以导致构建失败,从而保证代码质量。
  • 格式化检查:可以检查代码是否符合团队约定的格式,不符合则报错。

第四部分:最佳实践与技巧

  1. 从核心功能开始:不要试图一次性掌握所有功能,先熟练使用 代码导航、实时检查、快速修复、代码生成和基本重构,这些就能立刻提升你的效率。
  2. 善用快捷键:花点时间学习最常用的快捷键(如 Alt + \ 呼出面板,Ctrl + T 导航,F2 重命名),它们能让你摆脱鼠标,双手不离键盘。
  3. 将 ReSharper 集成到工作流中
    • 编码时:依赖它的实时检查,编写更健壮的代码。
    • 重构时:大胆使用它的重构功能,让代码结构更清晰。
    • 提交前:运行一次 清理代码,确保代码整洁、格式统一。
  4. 团队协作:务必使用配置文件来统一团队的 ReSharper 设置,避免因为个人偏好导致代码风格混乱。
  5. 保持更新:JetBrains 会频繁更新 ReSharper,修复 Bug 并增加新功能,保持更新可以让你始终拥有最好的体验。

ReSharper 不仅仅是一个工具,它更像是一位 24/7 在线的资深导师,时刻在你身边提醒你代码的“坏味道”,并手把手教你如何改进,初期可能需要一些学习成本,但一旦你掌握了它的核心用法,你的开发效率和代码质量将会迈上一个全新的台阶。

建议:安装后,花一个下午的时间,打开一个旧项目,尝试使用它提供的各种建议和重构功能,你会立刻感受到它的强大,祝编码愉快!

分享:
扫描分享到社交APP
上一篇
下一篇