java与.net比较学习系列(1) 开发环境和经常使用调试技巧

最近由于公司项目要由.net平台转到java平台的缘由,以前一直用.net的我不得不开始学习java了,刚开始听到说要转java的时候很抗拒,由于我想专一在.net平台上,不过这样也并不彻底是坏事,经过接触java开发也许能拓展个人开发思想和知识面,因此这也许是个学习java的机会。html

由于以前历来没有作过java开发,因此如今不得不从最基础的开始,并且由于作.net已经有几年了,习惯了VS的良好的操做体验,因此刚开始接触Eclipse有不少的不适应。这个系列我想经过与.net比较的方式来学习,一来分清java与c#的区别,二来也许能加深对.net的理解,第三是但愿想转java的朋友能经过这个系列少走弯路。java

工欲善其事,必先利其器。因此这个系列的第一篇我想总结的是它们开发环境以及经常使用的调试技巧的比较。我想从如下几点来进行总结。程序员

1,开发工具c#

2,经常使用操做快捷键多线程

3,经常使用调试技巧函数

一,开发工具

.net的开发IDE工具就不用我多说了,就是“全球最牛的IDE” Visual Studio(下称VS),而java开发通常选择Eclipse,固然Eclipse是免费的。下面经过一张图来讲明它们之间界面和布局上的差别。工具

VS:布局

image

Eclipse:学习

image

咱们能够看到,从界面布局上,二者没有太多差别,只是VS的项目管理在右边,而Eclipse的项目管理在左边,固然,这些窗口也是能够拖拽的,依据本身的操做习惯来。开发工具

二,经常使用操做快捷键

为了对比更加清晰,下面我用一张表格来分别列出VS和Eclipse经常使用操做的快捷键。

注:我这里用的VS版本是2010,Eclipse版本是Juno SR2

这份表格是基于我以前写的一篇博客进行提炼修改的,原文章地址:提升vs操做效率,vs 2008与vs 2010快捷键总结。各位朋友若是有一些好的操做技巧也欢迎提出。

  Visual Studio Eclipse 操做
编辑      
  CTRL+E+C CTRL+/ 注释,注释选中的代码(若是没有选中任何行,则默认注释当前行代码)
  CTRL+E+U CTRL+/(再按) 取消注释,取消注释选中的代码
  CTRL+E+D CTRL+SHIFT+F 格式化整个文档
  CTRL+E+F   格化式选中代码
  CTRL+J ALT+/ 列出成员
  CTRL + SHIFT + 空格 ALT+/ 提示鼠标所在方法的参数类型和个数
  CTRL+M+L CTRL+O 快速OutLine
  CTRL+M+O
  CTRL+. 不适用 自动using命名空间
  SHIFT+ALT+ENTER   全屏显示
  CTRL+K+S   外侧代码,能够加region预处理或者try...catch...等
       
导航      
  F12 F3 转到定义
  CTRL + TAB CTRL+E 快速切换活动窗口
  CTRL + SHIFT + F CTRL+F 显示在文件中查找和替换对话框
  SHIFT+ALT+ENTER CTRL+M 全屏无干扰模式
  CTRL+(→或←) 同VS 以单词为单位进行左,右跳转
  SHIFT+CTRL+(↑或↓) 暂无 跳转到该单词上次或下次出现的地方
  CTRL+[SHIFT]+] CTRL+SHIFT+P 匹配括号移动(包括(),{},[],””)
  SHIFT+F12(查找全部引用) CTRL+T 转到接口的实现类
  CTRL+-   返回到上次编辑的位置
  CTRL+,   定位到
       
调试      
  F5 F11 调试运行
  CTRL+F5 CTRL+F11 非调试运行
  F6 不适用 编译整个解决方案
  SHIFT+F6 不适用 编译当前选择的工程
  SHIFT+F5 CTRL+F2 中止调试
  F9 CTRL+SHIFT+B(break) 插入或取消断点
  CTRL+SHIFT+F9 暂无 取消全部断点
  F10 F6 单步执行,但直接执行函数中调用部分而不分步
  F11 F5 单步执行,而且单步执行函数中调用部分
  SHIFT+F11 F7(继续运行为F8) 执行当前函数剩余部分代码
  CTRL+F10 CTRL+R 运行到光标处

另外,Eclipse有一些本身独特的快捷键,也很是好用,以下:

CTRL+SHIFT+R(resource):快速打开资源

ALT+SHIFT+R(rename):快速重命名方法和属性

CTRL+.和CTRL+1:定位到错误及快速修改

三,经常使用调试技巧

之因此把调试技巧单独列出来总结,是由于调试技巧对于咱们程序员来讲很是重要,运用得好的话能够大大提升咱们的开发效率。其实对于VS的调试技巧,我相信咱们作.net开发的大部分都已经很熟悉了,下面我把VS中很是经常使用的几个调试技巧拿出来与Eclipse进行比较,看看Eclipse有没有相应的解决方法。

1,断点

提及调试,首先确定是设置断点了,因此断点是全部调试的基础。固然断点又分不少种不一样的类型,比较经常使用的就是条件断点和断点过滤器了。首先来看普通断点吧。

1)普通断点

设置断点,VS为F9,而Eclipse为CTRL+SHIFT+B(break)

image image

命中断点后,接下来咱们能够选择F10单步运行,F11进入调用函数内部,或Shift+F11从调用函数返回到函数调用处。而对于Eclipse,单步运行是F6,进入调用函数内部是F5,返回到函数调用处是F7。

2)条件断点

条件断点通常用在for循环中,以下图:

image

image

3) 断点过滤器

断点过滤通常用在调试多线程程序的时候,能过断点过滤咱们能够指定调试哪一个线程,以下图:

image

image

2,运行到指针

这个调试技巧也很是有用,当咱们在调试一个很长的方法,咱们不关心中间的逻辑,我但愿断点直接运行到某一行的时候,这个技巧就派上用场了。以下图。

注意,这个技巧在VS中是快捷键CTRL+F10,而在Eclipse中我尚未发现怎么去实现这个技巧,但愿知道的朋友能够补充一下。

image

image

3,即时窗口

这个也用得很是多,它便可以查看变量的值,也能够直接在里边写代码执行。以下图。

image  image

不过,Eclipse里的即时窗口没有VS的好用。

4,附加进程

附加进程有两个好处,第一,提升调试效率,我通常习惯先以非调试模式运行(VS中快捷键是CTRL+F5),此时页面已经打开,等到想调试的时候就选择附加进程进行调试,不想调试的时候我中止调试就好了,这样比按F5要快不少。第二个好处是,当程序已经发布了,本地也有源代码的状况下,那么就能够直接附加到进程就能够调试了。下面是图示。

注:Eclipse中我还不知道怎么实现这个功能,但愿知道的朋友补充一下。

image 

5,数据提示

当咱们在调式一段程序,须要反复查看某个变量的值的时候,咱们能够把这个变量钉在屏幕上,并且,咱们还能够临时去修改变量的值,这对咱们去模拟一些BUG的时候很是有用。

注:Eclipse中还不知道怎么弄,好像在变量声明的地方没法设置断点,但愿熟悉的朋友补充一下。

image

另外,这篇文章参考了如下文章:

1) 学习之路三十二:VS调试的简单技巧

2) 那些VisualStudio隐藏的调试功能

更新历史:

2014.9.12 增长CTRL+,定位到快捷鍵for VS

相关文章
相关标签/搜索