工欲善其事必先利其器,这句话相信大家都听说过。利其器,就是我们先得有个神器,神器就是VS(号称宇宙第一IDE),有了神奇不会用也是白搭,就像你有了倚天剑和屠龙刀你不会使,它也就是废铁(假设它们是铁做的)。那怎叫会用呢,掌握它快捷键这个就是最基本的了,用任何一个IDE为了提高我们的工作效率,我们必须要掌握它的快捷键,快捷键就是为提升各种操作效率而生。当然还必须知道这个IDE的各种插件神器,就如VS的Reshaper和NuGet,如果你做NET开发你尽然不知道!我只能说你out了。
快捷键你不可能一次性就把所有的记住并用起来,个人经验是:一次性记住几个最常用的,然后自己在实际的编码中不断地去实践,养成用快捷键的习惯,过段时间回头再看看那些快捷键,在找几个自己平时没用到过但是确实又很实用的运用到自己平时的编码中,就这样不断地学习和实践,最后就会掌握和熟练实用各种快捷键了。
进入正题:VS快捷键,由于我装了resharper,所以有些地方和没装插件的VS是不一样的
最常用的的ctrl+C、ctrl+V、ctrl+shift+v、ctrl+鼠标,可以选中单个单词进行复制粘贴,如果光标在那一行直接按ctrl+c 会拷贝那一行。
ctrl+shift+v ,一看到shift大家肯定就能猜到这个的意思了,只要你剪贴板的数据没被清除,你按住ctrl+shift在不断的按v它会把之前你拷贝过挨个给你粘贴出来
实际运用:比如你从这个页面(页面一)拷贝了一小段代码到另外一个页面(页面二),但是在另外一个页面(页面二)里你必须要先拷贝一段代码然后才能把你现在(页面一)代码粘贴进去,这个时候你你有三种种选择:
(一)先在页面一拷贝这段代码,再页面二用鼠标选择那段代码,然后按住ctrl拖动复制,再然后再粘贴你页面一的代码
(二)先在页面一拷贝这段代码,再另外页面二也ctrl+c要复制的代码,然后页面二ctrl+v粘贴,这个时候ctrl+shift+v就派上用场了,按住ctrl+shift再按v会粘贴处你之前复制的代码。
(三)最常规的操作,现在页面二把代码复制好了,然后在从页面一复制过去。
PS:复制和粘贴虽然是最常用的的但是希望不要盲目用,每次按下ctrl+c 和ctrl+v的时候自己就要用心思考下,是否应该拷贝,是否应该重构你的代码,来杜绝重复的代码。
用鼠标选中代码然后按住ctrl拖动到指定地方,释放鼠标,代码就直接复制到鼠标释放的地方了,这个用得还是很多的,有时候比用ctrl+c ctrl+v要快。
ctrl+w选中光标所在地方的单词,继续按ctrl+W会加大选中范围,这个在选中单个单词、是函数名、字段明的时候比shift+ctrl+←→要快
shift+alt+ ↑ ←↓→ 选中一个区域 也可以是 shift+alt+ ctrl ←→的组合,左右的时候每次移动一个单词
shift+ctrl+ ←→ 选中,光标跳转的时候会一个单词一个单词的跳过, 如果是shift+←→ 只会一个字母一个字母地移动,一帮情况下都是使用shift+ctrl+ ←→
ctrl+↑ ←↓→ 左右的时候是一个单词一个单词的跳过 ctrl+↑↓的时候是移动当前可视窗口可视光标不动
要想大量的移动可是窗口就用pageup pagedown 或者是ctrl+home ctrl+end
删除一行 delete
删除多行ctrl+delete(这个删除后面的一大堆换行和空格比多次按delete快得多)
shift+delete ctrl+L
ctrl+shift+enter 新增一行 这个很常用,光标不管在这一行的哪个位置只要按ctrl+shift+enter 就会在后满新增一行,如果你先按end键再按enter键 你明显慢了一步
ctrl+L 这个和shift+delete一定程度上类似,ctrl+L会清空掉剪贴板的数据,不过我到时养成习惯了 每次都ctrl+L
跳转,各种ctrl+
home end 最常用的,选择一行文字经常用到这两个键,当你sql语句有很多行的时候,你不想所有都运行,执行运行当前行,当你写完这行的时候,立即按住shift按后按home就选中了这行,此时你在按一下f5 你当前行的sql语句就执行了。 我经常看到有的人是先鼠标选中这行sql语句,然后再用鼠标去上面点击执行当前选中的sql语句,这个明显太慢了。
Ctrl + Home/End 快速跳到文件头尾
Ctrl + -(往前);Ctrl + Shift + - (往后)跳到上一个光标停留的地方
括号移动:Ctrl + {}将光标放在需要匹配的括号然后按这个快捷键,光标会跳转到其相对于那个的括号上去。当遇到那种写的很烂的代码,各种if else嵌套的时候,这个ctrl+{}就派上用场了。
各种折叠和展开:在单页面代码比较多的时候很适用,ctrl+m+l 彻底展开,ctrl+m+o比ctrl+m+l要温柔点,ctrl+m+m 折叠或者展开当前的方法或者类。
单页面查找,函数,字段被引用的情况。
ctrl+f3 查找当前选中的对象,选中对象然后按ctrl+f3 这个比你先ctrl+c复制一个对象然后ctrl+f 再ctrl+v 明显要快些啥
ctrl+f 查找
ctrl+shift+↑↓ 当前选中单词在页面上的跳转,这个也常用,为了查看当前这个变量在哪些地方被用到,不必使用ctrl+f,直接选中然后ctrl+shift+↑↓即可
查找代码字段或方法的引用,这个在vs2013中已经自带了,以前也有shift+f12,不过还是resharper的强大,我的快捷键是alt+f7, 还有改名直接是f2,在没有用vs2013的时候这个功能还是很常用的。
代码注释 代码格式化
Ctrl + E + C, Ctrl + K + C 注释选中代码
Ctrl + E+ U, Ctrl + K + U 取消注释的代码
resharper ctrl+/ ctrl+shift+/ 生成这种注释/****/
代码格式化:ctrl+k +f 格式化选中的代码,ctrl+k+d当前文档的代码;
resharpr的code cleanup 有只格式化,有既格式化带有又清理没用的using两种选择
更快速的编码:tab建 prop加tab键
reshaper 的alt+insert 十分强大
智能提示 ctrl+j ctrl+p
ctrl+k+s 插入代码段 最常用的就是插入#region---#endregion
关于调试
f9添加或删除断点,shift+f9 快速监视选中的变量,至于其他的f5 f10 f11 就不说了,条件断点等等那些又是调试的技巧了
还有在reshaper中万能的alt+enter ,alt+insert
以下是推荐学习内容:
那些VisualStudio隐藏的调试功能:http://www.cnblogs.com/developersupport/p/visualstudio-debugging-tips.html
开发和常用工具推荐清单:http://www.cnblogs.com/JustRun1983/p/3254264.html
Visual Studio 必备神器:http://www.cnblogs.com/stoneniqiu/p/3488546.html