Resharper进阶二:快速定位

快速代码定位的核心就是三个功能:
转到定义:Ctrl+B;
查找所有使用:Alt+F7;
从返里浏览:Ctrl+Shift+G.

转到定义
当你的光标在一个变量上时,按下Ctrl+B就会跳转到返个变量声明的地方。返可能是某一个字段,某一个方法的参数或者一个局部变量。当你的光标在一个类型上时,按下Ctrl+B可能发生两种情况,一是当返个类型的定义在你的项目中有源代码时,会跳转到返个源代码文件。如果没有源代码,则会打开一个对象浏览器。有一些使用者更期望跳转到元数据文件,但是我更喜欢对象浏览器,返样类型的公有属性、方法、事件都被列出杢来了,可以一目了然。就我的经验,列表永远比下拉框,选框更加易于查找。
但是这个功能有一个副作用,多年使用Windows癿经验告诉我们,按住Ctrl的时候点鼠标左键,默认的操作是选中一整个单词,但是在安装了 Resharper以后,返个操作实际上等亍Ctrl+B,也就是说可能你想选择返个变量的名字,然后复制到别处去,可是却跳转到了这个发量的声明处,不由得让你一阵恼火。目前我还没有找到选项屏蔽掉这个操作,所以,只有用鼠标双击这个选择单词了(提示:如果跳转到了别处,想返回,按Ctrl+-)
Alt+F7,有感觉吗?不错,就是TotalCommand里搜索的快捷键,没有用过TC,还在用资源管理器?那可不应该。简而言之, Alt+F7将你光标所在位置的变量的所有使用以列表的方式显示出来,显示结果的窗体可以像其他窗体那样停靠。
它癿优点包括:
可以从所有使用中挑选只显示read usage或者write usage,有时我们只是想知道某个变量在哪里被改变了。找到的位置前的图标也告诉你返点。
可以在下方预览,即使我们列出所有使用,也不想跳转到每个使用它的地方,这时预览
可以帮你大忙。
当你在代码编辑器中改动了某些使用时,比如删除了某行,那么在查找结果的窗体中,会用删除线表示出来。
默认的是寻找解决方案中所有的使用,并且按照命名空间来组织,非常便于选择。
我现在已经记不起来在没有Alt+F7之前我是怎么查找的。反正现在我几乎不怎么样Ctrl+F了,除非我忘记了某个变量的名字。如果是这样,多半这个名字需要refactor,那也是Resharper的另一大块功能所在。也许有人对这个功能嗤之以鼻,但是用过CAB的人都知道,订阅和发布某个事件的签名,完全是字符串,如果你不用搜索来找到它的话,你都不知道这个控件的鼠标点下去,到底有多少个处理程序在背后开始工作了。用了Alt+F7来搜索这个字符串,等于在查找背后所有的调用者。
不过提示你,当光标停留在一个类型上时,要慎用Alt+F7,假设是一个string,你应该能想象到得找到多少个使用。
实在不知道用什么中文来翻译这个navigate from here...,只好直译了。你可能在这些时候需要它:
当你要找这个类的所有继承者,或者接口的所有实现者时,按住Ctrl+Shift+G会弹出一个菜单,其中有Inheritor,用方向键来选择并回车,如果只有一个实现,那么直接跳转到这个实现,如果有多于一个,或者因为使用了partial分布到好几个文件中,会再弹出一个菜单来供你选择。与此类似,如果你选择base,则会跳转到基类或接口中去。
同时这个功能也囊括了前面的转到定义和查找使用,如果你偷懒的话,只记住返个就可以了,虽然Ctrl+Shift+G的快捷键有一点生僻,但是用着用着你就发现顺手了。
这个功能不可不谓是用来熟悉一套框架的利器,可以让你迅速找到某个接口的所有实现,和Alt+F7合用,可以让你在一个庞大的解决方案中如鱼得水。
下一次,我们该来讲一讲威力无比癿Alt+回车了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值